プログラミング勉強日記
2020年11月4日
復習もかねてJavaを0から勉強しなおそうと思う。そこでまずは基本的な用語をおさらいする。
クラスとメソッド
クラスとメソッドは以下のように記述する。(詳しくは下記で説明する)
class クラス名{
メソッド名 (引数){
// 実行処理
メソッド本体
}
}
クラス
簡単に言うと、クラスはプログラムを実行するときに必要な処理をまとめた設計図のようなもので、メソッドと変数によって構成される。
Javaのようなオブジェクト指向言語ではプログラミングの対象をオブジェクト(もの)としてとらえる。なので、クラスはオブジェクトの設計図ではあるが、オブジェクトそのものではない。そのため、クラスを使用するときにはオブジェクトを生成(=インスタンス化)する必要がある。
クラスを使えるようにするためには、クラスを定義しなくてはならない。フィールドはクラス内部の定義された変数で、クラスの持つ情報が格納されている。オブジェクトにはフィールドとメソッドが1つにまとめられている。
class クラス名 {
// フィールドやメソッドなどを記述
}
メソッド
簡単に言うと、メソッドはクラスが持つ機能を記述したもので、メソッド名と引数、メソッド本体によって構成される。
上記で述べたようにクラスを利用するために生成されたオブジェクトは属性とメソッドという要素から構成される。メソッドは自分で作ることもできるが、多くのメソッドがあらかじめ用意されている。メソッドは1つのクラスに複数記述することもできる。
オブジェクトとオブジェクト指向
クラスは設計図で、オブジェクトはその設計図に基づいて作られる部品のようなものである。オブジェクトはクラスを実体化(=インスタンス化)したもので、オブジェクトを使用するためには下記のような記述をしないといけない。
クラス名 変数名 = new クラス名(引数);
オブジェクトは「モノ」という意味があり、オブジェクトを部品のように組み合わせてシステムを構築する考え方のことをオブジェクト指向という。
継承
特定のクラスのフィールドやメソッドを引き継いで新しいクラスを定義することを継承という。継承を行うときに元のクラスをスーパークラス、新しく作るクラスをサブクラスという。
class サブクラスの名前 extends スーパークラスの名前{
// 処理内容、メソッド
}
オーバーライド
スーパークラスのメソッドをサブクラスで再定義することをオーバーライドという。オーバーライドしたメソッドを呼び出すときは下記のように記述する。(finalやstaticといった修飾子がついてるメソッドはオーバーライドできない)
super.メソッド名;
オーバーロード
同じクラス内で同じメソッド名を定義することはできないが、引数の型や並び替えすることで同じ名前のメソッドを複数定義することができる仕組みをオーバーロードという。
参考文献
Java入門:プログラミングの必須知識!まず押さえたい基本用語集
【Java入門】コンパイル、クラス、メソッド...押さえたい基本用語まとめ