package com.neusoft.interfaces;
public class Test {
public void m1(B b) {
b.study();
}
public B m2() {
return new BImpl();//返回接口實現類對象
}
public Animal m3(){
return new Dog();//返回子類的對象
}
public void m4(Animal animal){
}
public static void main(String[] args) {
Test test = new Test();
test.m1(new BImpl());
Animal anmial = test.m3();
test.m4(new Dog());
}
}
package com.neusoft.interfaces;
/**
* 實現B接口
* @author Administrator
*
*/
public class BImpl implements B{
@Override
public void study() {
// TODO Auto-generated method stub
}
}
package com.neusoft.interfaces;
public class Dog extends Animal{
@Override
public void eat1() {
System.out.println("eat1 ... ");
}
}
package com.neusoft.interfaces;
public abstract class Animal {
/**
* 抽象類
*/
public abstract void eat1();
}