Java のクラスのインスタンス
Java では、クラスとオブジェクトはオブジェクト指向プログラミングの基本概念です。
クラスは、オブジェクトの作成元となる青写真です。Java のインスタンスはオブジェクトと呼ばれます。オブジェクトは実際のエンティティですが、クラスは類似したオブジェクトのグループです。
Java で new
キーワードを使用してクラスのインスタンスを作成する
オブジェクト
はクラスから作成されます。Dog
は、実際のエンティティであるクラスです。
基本的に、インスタンス
とオブジェクト
は同じものです。new
キーワードを使用して、Dog
クラスのインスタンス
を作成します。
new
キーワードの後にコンストラクターを呼び出すと、オブジェクトが作成され、新しいクラスが初期化されます。したがって、Dog
クラスのインスタンス
。
public class Dog {
public Dog(String name) {
System.out.println("Dog,s name is : " + name);
}
public static void main(String[] args) {
Dog dog = new Dog("Scooby");
}
}
出力:
Dog,s name is : Scooby
instanceof
演算子を使ってクラスの型をチェックする
Java では、instanceof
は、インスタンスが指定されたタイプであるかどうかをチェックするために使用される比較演算子であり、ブール値の true または false を返します。instaneof
演算子を使用して instance
と null
タイプを比較すると、false が返されます。
ここでは、Animal
クラスを拡張する子クラスとして Dog
があります。Dog
クラスには、3つの string
型変数 name
、color
、および breed
をそれぞれ受け取るコンストラクターがあります。
new
キーワードを使用して、Dog
クラスのインスタンスを作成しました。
サブタイプのオブジェクトは、親クラスのタイプでもあります。instance``dog
が Animal タイプであるかどうかを確認すると、Dog が Animal クラスを拡張すると、instanceof
演算子は true
を返します。したがって、dog
は Dog
または Animal
クラスのインスタンスと呼ぶことができます。
null である dog1
インスタンスを Dog
クラスのタイプとして比較すると、instanceof
は false を返します。
class Animal {}
public class Dog extends Animal {
public Dog(String name, String color, String breed) {
System.out.println(name + " is a " + color + " colored " + breed + " Dog");
}
public static void main(String[] args) {
Dog dog = new Dog("Scooby", "brown", "Labrador");
Dog dog1 = null;
System.out.println(dog instanceof Dog);
System.out.println(dog instanceof Animal);
System.out.println(dog1 instanceof Dog);
}
}
出力:
Scooby is a brown colored Labrador Dog
true
true
false
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn