分享

匿名内部类的方法调用

 樱花梦_张艺馨 2016-10-20
/*
匿名内部类的方法调用
*/
=================单个方法调用 练习一 =========================
interface Inter{
 public abstract void show();
}
class Outer{
 public void see(){
  final int num = 10;
  new Inter(){
   public void show(){
    System.out.println(num);
   }
  }.show();
 }
}
class Test{
 public static void main(String args[])
 {
      Outer oi =new Outer();
      oi.see();
 }
}
结果:
 10
======================多个方法调用,练习一 =============
interface Inter{
 public abstract void show();
 public abstract void show2();
}
class Outer{
 public void see(){
  final int num = 10;
  new Inter(){
   public void show(){
    System.out.println(num);
   }
   public void show2(){
    System.out.println("show2");
   }
  }.show();
  new Inter(){
   public void show(){
    System.out.println(num);
   }
   public void show2(){
    System.out.println("show2");
   }
  }.show2();
 }
}
class Test{
 public static void main(String args[])
 {
      Outer oi =new Outer();
      oi.see();
 }
}
结果:
10
show2
==================多个方法的调用,简化版 练习二==========
interface Inter{
 public abstract void show();
 public abstract void show2();
}
class Outer{
 public void see(){
  final int num = 10;
  Inter i =new Inter(){ //多态
   public void show(){
    System.out.println(num);
   }
   public void show2(){
    System.out.println("show2");
   }
  };
  i.show();
  i.show2();
 }
}
class Test{
 public static void main(String args[])
 {
      Outer oi =new Outer();
      oi.see();
 }
}
结果:
10
show2

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多