クラスの基本について (1/5)
作成:2014-08-16 10:38
更新:2014-08-16 10:38
更新:2014-08-16 10:38
■クラスの定義
Swiftは、オブジェクト指向言語です。ということは、もちろんオブジェクトを扱うことができます。
Swiftのオブジェクト指向は、一般に「クラスベース」と呼ばれるものです。「クラス」という、オブジェクトの設計図に当たるものを定義しておき、これをもとにオブジェクトを作ります。
クラスから作成されるオブジェクトを「インスタンス」と呼びます。Swiftでは、定義したクラスから、実際に操作することのできるインスタンスを作って利用する、というわけです。
クラスの中には、値を保管する変数と、処理となる関数を入れておくことができます。クラス内に用意される変数を「プロパティ」、クラス内に用意される関数を「メソッド」と呼びます。
●クラスの定義
クラスの定義のもっともシンプルな形は、以下のようなものになります。
「class 〇〇」といったものの後に{}をつけて、その中にクラス内に用意するものを記述する、という形になります。
下のリスト欄に「Helo」クラスの定義をあげておきましょう。このクラスでは、nameというプロパティと、sayというメソッドが用意されています。これらが、Heloクラスに用意されている機能というわけです。
sayメソッドの中では、nameプロパティが使われています。こんな具合に、クラスにあるメソッドの内部では、そのクラスにあるプロパティやメソッドがそのまま使えるようになっています。
●アシスタントエディタについて
ここではprintlnというものを使っていますが、これは値を標準出力に書き出す関数です。Xcodeのプレイグラウンドで実行する場合、「アシスタントエディタ」というものを表示しておくと便利です。
Xcodeの<View>メニューから<Assistant Editor>内の<Show Assistant Editor>を選んで下さい。画面右側に新たな領域が表示されます。これがアシスタントエディタです。printlnなどが実行されると、ここに「Console Output」という項目が自動的に表示され、printlnした結果が現れるようになります。
Swiftのオブジェクト指向は、一般に「クラスベース」と呼ばれるものです。「クラス」という、オブジェクトの設計図に当たるものを定義しておき、これをもとにオブジェクトを作ります。
クラスから作成されるオブジェクトを「インスタンス」と呼びます。Swiftでは、定義したクラスから、実際に操作することのできるインスタンスを作って利用する、というわけです。
クラスの中には、値を保管する変数と、処理となる関数を入れておくことができます。クラス内に用意される変数を「プロパティ」、クラス内に用意される関数を「メソッド」と呼びます。
●クラスの定義
クラスの定義のもっともシンプルな形は、以下のようなものになります。
class クラス名 {
……プロパティやメソッドを記述する……
}
「class 〇〇」といったものの後に{}をつけて、その中にクラス内に用意するものを記述する、という形になります。
下のリスト欄に「Helo」クラスの定義をあげておきましょう。このクラスでは、nameというプロパティと、sayというメソッドが用意されています。これらが、Heloクラスに用意されている機能というわけです。
sayメソッドの中では、nameプロパティが使われています。こんな具合に、クラスにあるメソッドの内部では、そのクラスにあるプロパティやメソッドがそのまま使えるようになっています。
●アシスタントエディタについて
ここではprintlnというものを使っていますが、これは値を標準出力に書き出す関数です。Xcodeのプレイグラウンドで実行する場合、「アシスタントエディタ」というものを表示しておくと便利です。
Xcodeの<View>メニューから<Assistant Editor>内の<Show Assistant Editor>を選んで下さい。画面右側に新たな領域が表示されます。これがアシスタントエディタです。printlnなどが実行されると、ここに「Console Output」という項目が自動的に表示され、printlnした結果が現れるようになります。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
import Cocoa class Helo { var name = "Taro"; func say(){ println("Hello, " + name + "!"); } }
※関連コンテンツ