黑马程序员技术交流社区

标题: 三种匿名内部类 [打印本页]

作者: Quasimodo2    时间: 2016-10-18 18:04
标题: 三种匿名内部类
匿名内部类
A、继承式的匿名内部类

  public class Car {

  public void drive(){

  System.out.println("Driving a car!");

  }

  public static void main(String[] args) {

  Car car = new Car(){

  public void drive() {

  System.out.println("Driving anther car!");

  }

  };

  car.drive();

  }

  }

  结果输出了:Driving another car! Car引用变量不是引用Car对象,而是Car匿名子类的对象。

  B、接口式的匿名内部类。

  interface Vehicle {

  public void drive();

  }

  class Test{

  public static void main(String[] args) {

  Vehicle v = new Vehicle(){

  public void drive(){

  System.out.println("Driving a car!");

  }

  };

  v.drive();

  }

  }
C、参数式的匿名内部类。

  class Bar{

  void doStuff(Foo f){}

  }

  interface Foo{

  void foo();

  }

  class Test{

  static void go(){

  Bar b = new Bar();

  b.doStuff(new Foo(){

  public void foo(){

  System.out.println("foofy");

  }

  });

  }

  }

作者: 煤男纸    时间: 2016-10-19 00:34
不错不错

作者: star皆空    时间: 2016-10-19 00:40
666666感谢分享

作者: 蓝光四号    时间: 2016-10-19 07:50
不错,学习了

作者: 冷猫    时间: 2016-10-19 09:59
mark,非常感谢,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2