SCJPチートシート。 パート2
パート1カプセル化と継承
- クラス間の関係を定義する用語の違いを覚えておいてください。 IS-Aは、あるクラスが別のクラスを継承する(拡張する)か、インターフェイスを実装する(実装する)場合です。 HAS-Aは、あるクラスで別のクラスのオブジェクトへの参照が使用される場合に言われます。
- カプセル化の原則に基づいて記述されたコードには、メソッド(setVarNameおよびgetVarName)を介してアクセスされるプライベート変数が含まれています。
- 継承は、ポリモーフィズム、型キャスト、メソッドのオーバーロードおよびオーバーライドの背後にある基本概念です。
- Javaでは、すべてのクラスはObjectの子孫です。
多型
- 参照変数のタイプを変更できません。 ただし、変数はそのクラスの子孫のオブジェクトを参照できます。 つまり、異なるタイプの変数は1つのオブジェクトを参照できます。 主なものは、これらすべての型がオブジェクトクラスのスーパークラスであることです。 したがって、Object型の変数は、任意の型のオブジェクトを参照できます。
List<Integer> list; list = new ArrayList<Integer>();
- 参照変数のタイプのみが、どのオブジェクトメソッドを呼び出すことができるかを決定します。 つまり、特定のクラスに固有のメソッドを使用する場合、スーパークラス型の変数からそれらを呼び出すことはできません。
public class Fruit { public void eat(){ System.out.println("NomNomNom"); } } class Apple extends Fruit{ public void grow(){ System.out.println("I'm growing"); } public static void main(String[] args) throws InterruptedException { Fruit fruit; fruit = new Apple(); fruit.eat();
- 多態性はオブジェクトメソッドでのみ機能しますが、静的メソッドでは機能しません。
オーバーロードとオーバーライド
戻り型
コンストラクター
静的メソッドと変数
- 動作がオブジェクトの状態に依存しない場合は、静的メソッドを使用します。
- 静的メソッドは、静的変数にのみアクセスできます。
- 静的メンバーはオブジェクトではなく、クラスに関連付けられています。
- 静的メソッドはオーバーライドできません。
参照:
SCJP Sun認定プログラマーfor Java 6試験310-065 Source: https://habr.com/ru/post/J150193/
All Articles