1. 程式人生 > >面向物件_介面名作為返回值型別

面向物件_介面名作為返回值型別

/*
	返回值型別
		基本型別(簡單)
		引用型別:
			類:返回的是該類的物件
			抽象類:返回的是該抽象類的子類物件
			介面:返回的是該接品的實現類的物件
*/
interface Love{
	public abstract void love();
}

class LoveDemo{
	public Love getLove(){
		//Love l = new Teacher();
		//return l;
		
		return new Teacher();
	}
}

//定義具體類實現介面
class Teacher implements Love{
	public void love(){
		System.out.println("老師愛學生,愛Java");
	}
}

class TeacherTest2{
	public static void main(String[] args){
		//如何測試呢?
		LoveDemo ld = new LoveDemo();
		Love l = ld.getLove();//new Teacher(); Love l = new Teacher(); 多型
		l.love();
	}
}