A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 西贝 中级黑马   /  2016-1-27 15:39  /  903 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天学到匿名内部类的章节,觉得有点儿吃力,在老师案例的基础上,把内部类和匿名内部类做对比,掌握匿名内部类的特性和实质
  1. /*
  2. * A:匿名内部类
  3.         * 就是内部类的简化写法。
  4. * B:前提:存在一个类或者接口
  5.         * 这里的类可以是具体类也可以是抽象类。
  6. * C:格式:new 类名(继承)或者接口(实现)名(){
  7.                         重写方法;
  8.                 }
  9. * D:本质是什么呢?
  10.         * 是一个继承了该类或者实现了该接口的子类匿名对象。
  11. * E:案例演示
  12.         * 按照要求来一个匿名内部类
  13. 两种实现方式:内部类、匿名内部类,下面分别使用两种方式,并进行对比
  14. */
  15. class Demo1_NoNameInnerClass {
  16.         public static void main(String[] args) {
  17.                 Outer o = new Outer();
  18.                 o.method();

  19.                 Outer1 o1 = new Outer1();
  20.                 o1.method();
  21.         }
  22. }

  23. interface Inter {
  24.         public void print();
  25. }

  26. class Outer {                                                     //内部类来实现
  27.         class Inner implements Inter {
  28.                 public void print() {
  29.                         System.out.println("print");
  30.                 }
  31.         }

  32.         public void method(){
  33.                 Inner i = new Inner();
  34.                 i.print();
  35.                 }
  36. }

  37. class Outer1 {                                      //匿名内部类来实现
  38.         public void method() {
  39.                 new Inter() {                                        //实现Inter接口
  40.                         public void print() {                            //重写抽象方法   相当于: class Inner implements Inter
  41.                                 System.out.println("print");
  42.                         }
  43.                 }.print();
  44.         }
  45. }
复制代码



评分

参与人数 1技术分 +1 收起 理由
洋葱头头 + 1

查看全部评分

3 个回复

正序浏览
感谢分享
回复 使用道具 举报
匿名内部类在开发中非常实用
回复 使用道具 举报
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马