私は他のプログラミングコースを撮影したけれども、私は、Javaへの新しいブランドです。私は本当にUMLダイアグラムからクラスの概念に苦しんでいます。私は、親クラスと2つのクラスを持っています。私の割り当ては、このクラス構造を作成することです。私は、一般的なものの内のクラスとの関係の概念に苦しんでいます。
例:私の親クラスは「動物」であると私の子クラスは「モンキー」と「クマ」している場合 - 実装される唯一の選択肢は、「猿」と「熊」であれば、これはクラスを作る「動物」抽象クラス区別ちょうど「アニマル」は存在しないだろうと、それは常に「モンキー」または「熊」となります。
動物が抽象的であれば、どのように私は三つのファイル(Animal.java、Monkey.java、Bear.java)を作成しますか?私は動物の性質や特徴が猿と熊によって継承されていることを理解しています。仮定すると、私持って、例えば、名前とそれぞれの属性とゲッターとセッターとして動物の年齢のために - 名前と「動物」クラスの年齢は(コード以下)民間であれば、どのように「熊」クラス名をピックアップしないと年齢それは、独自のJavaファイル/クラス内にある場合?私のコードは以下の通りです...
Animal.java
public class Animal {
private String animalName;
private int animalAge;
public void setName (String name) {
animalName = name;
}
public void setAge (int age) {
animalAge = age;
}
public static String getName() {
return animalName;
}
public static String getAge() {
return animalAge;
}
}
Bear.java
public class Bear {
public int weight;
public static int weight() {
return weight;
}
}
// This is where I get stuck & don't know where to go from here.
私は「動物」クラスの一部であるオブジェクト「熊」を作成しておりますことを理解しますが、クマのように、独自のクラスがあり、どのように「クマ」は、動物からのその割り当てられた値を取得していますか?私は、デフォルト値で「動物」と「クマ」を割り当てることができますが、彼らはお互いに話しているどのように私の脳は一緒に置くことができません。
これは、このフォーラムの範囲外であるかもしれないが、私の教授は応答しないと私は書籍、電子書籍、教材、およびいくつかの講義を読んできたし、これは私に来ていないと私はしようと、この時点で2週間の背後にありますよ私はプログラムで実際のコードを進めることができますので、この概念を理解します。
前もって感謝します。
これを行うには忘れてしまいました。
public class Bear extends Animal {
// ...
}
私はあなたがコンストラクタを追加することをお勧めします:
public class Animal {
private String name;
private int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() [ return this.name; }
public int getAge() { return this.age; }
}
public class Bear extends Animal {
private int weight;
public Bear(String name, int age, int weight) {
super(name, age);
this.weight = weight;
}
public int getWeight() { return this.weight; }
}
ので、あなたは、これを行うことができBear
IS-A Animal
:
Animal b = new Bear("Smokey", 10, 300);
System.out.println(b.getName()); // prints "Smokey"