00060_接口作为方法参数与返回值
1、接口作为方法参数
当遇到方法参数为接口类型时,那么该方法要传入一个接口实现类对象。
1 //接口 2 interface Smoke{ 3 public abstract void smoking(); 4 } 5 class Student implements Smoke{ 6 @Override 7 public void smoking() { 8 System.out.println("课下吸口烟,赛过活神仙"); 9 } 10 } 11 //测试类 12 public class Test { 13 public static void main(String[] args) { 14 //通过多态的方式,创建一个Smoke类型的变量,而这个对象实际是Student 15 Smoke s = new Student(); 16 //调用method方法 17 method(s); 18 } 19 20 //定义一个方法method,用来接收一个Smoke类型对象,在方法中调用Smoke对象的show方法 21 public static void method(Smoke sm){//接口作为参数 22 //通过sm变量调用smoking方法,这时实际调用的是Student对象中的smoking方法 23 sm.smoking(); 24 } 25 }
2、接口作为方法返回值
当遇到方法返回值是接口类型时,那么该方法需要返回一个接口实现类对象。
1 //接口 2 interface Smoke{ 3 public abstract void smoking(); 4 } 5 class Student implements Smoke{ 6 @Override 7 public void smoking() { 8 System.out.println("课下吸口烟,赛过活神仙"); 9 } 10 } 11 //测试类 12 public class Test { 13 public static void main(String[] args) { 14 //调用method方法,获取返回的会吸烟的对象 15 Smoke s = method(); 16 //通过s变量调用smoking方法,这时实际调用的是Student对象中的smoking方法 17 s.smoking(); 18 } 19 20 //定义一个方法method,用来获取一个具备吸烟功能的对象,并在方法中完成吸烟者的创建 21 public static Smoke method(){ 22 Smoke sm = new Student(); 23 return sm; 24 } 25 }

浙公网安备 33010602011771号