類的繼承
public class 子類 extends 父類 { }
子類可以重寫父類的方法,但也可以通過【super.父類的方法】調用父類的方法。通過【super.父類的屬性】調用父類的屬性。
class Computer3 { // 父類:電腦 String sayHello() { // 方法:打招呼 return "歡迎使用"; } } public class Pad3 extends Computer3 { // 子類:平板電腦 String sayHello() { // 子類重寫父類方法 return super.sayHello() + "iPad"; // 調用父類方法并添加字符串 } public static void main(String[] args) { Computer3 pc = new Computer3(); // 創建父類-電腦類對象 System.out.println(pc.sayHello()); Pad3 ipad = new Pad3(); // 創建子類-平板電腦類對象 System.out.println(ipad.sayHello()); } }
object類
public class Hello { public String getStr(){ return (getClass().getName()); } @Override public String toString(){ return (getClass().getName()+"。"); } public static void main(String[] args) { Hello ho = new Hello(); System.out.println("ho.getStr():"+ho.getStr()); System.out.println("ho.toString():"+ho.toString()); } } /*ho.getStr():Hello ho.toString():Hello。*/
疑問
class Animal { String branch; public Animal(String branch) { this.branch = branch; } public String getBranch() { return branch; } public void setBranch(String branch) { this.branch = branch; } @Override public boolean equals(Object obj) { Animal animal = (Animal) obj; if (this.getBranch().equals(animal.getBranch())) { return true; } else { //System.out.println(this.getBranch()); ——→ 輸出“豬科” //System.out.println(animal.getBranch()); ——→ 輸出“犬科” return false; } } } class NewDog extends Animal { public NewDog(String branch) { super(branch); } } class NewPig extends Animal { public NewPig(String branch) { super(branch); } } public class RightResult { public static void main(String[] args) { NewPig pig = new NewPig("豬科"); NewDog dog = new NewDog("犬科"); if (pig.equals(dog)) { System.out.println("豬和狗是同類!!!"); } else { System.out.println("豬和狗不是同類。"); } } }
浙公網安備 33010602011771號