JAVA之當返回值型別和形參為引用引數
阿新 • • 發佈:2018-12-26
資料型別分為1、基本資料型別
2、引用資料型別
引用型別是一個物件型別,指向堆記憶體中的地址
當返回值為引用型別時: 1、類 :返回值為引用型別的物件
2、抽象類:返回值型別為抽象類的子類的上轉型物件
3、 介面:返回值型別為介面的實現類的物件
當形參為引用型別時:
1、類 :傳值為該類的物件
2、抽象類:傳值為抽象類的子類的上轉型物件
3、 介面:傳值為介面的實現類的物件
1、當引用型別為類時
public class test { public static void main(String[] args) { Woman woman = new Woman(); Man man = woman.a(); man.eat(); } } class Man{ public abstract void eat(){ System.out.println("吃飯"); } } class Woman{ public Man a() { return new Man(); } }
2、當引用型別為抽象類時
public class test { public static void main(String[] args) { Woman woman = new Woman(); Man man = woman.a(); man.eat(); } } abstract class Man{ public abstract void eat(); } class Woman{ public Man a() { return new Son(); } } class Son extends Man { public void eat() { System.out.println("吃飯"); } public void sleep() { System.out.println("睡覺"); } }
3、當引用型別為介面時
public class test{
public static void main(String [] args) {
}
}
interface Eat{
public abstract void eatFood();
}
class Man{
public Eat a() {
return new Son();
}
}
class Son implements Eat{
public void eatFood() {
System.out.println("吃肉");
}
}