zoukankan      html  css  js  c++  java
  • 类中定义接口匿名内部类

     1 class Outer
     2 {
     3     //内部类
     4     class InnerClass
     5     {
     6         void show()
     7         {
     8             System.out.println("类InnerClass中的show()...");
     9         }
    10     }
    11     //内部接口
    12     interface InnerInterface
    13     {
    14         void show();
    15     }
    16 
    17     void show()
    18     {    
    19         //方法中通过匿名实现方式调用
    20         new InnerInterface()
    21         {
    22             public void show()
    23             {
    24                 System.out.println("接口InnerClass中的show()...类Outer中show()中的InnerInterface的show()...");
    25             }
    26         }.show();
    27     }
    28 
    29 }
    30 public class ClassInterface
    31 {
    32     public static void main(String[] args)
    33     {
    34         Outer outer = new Outer();
    35         //outer.new InnerClass().show(); //1、外部类调用内部类中的方法show() ---成功
    36         
    37         //outer.show(); //2、类Outer中通过匿名实现方式调用 ---成功
    38 
    39         //3、外部类中通过匿名实现方式调用
    40         outer.InnerInterface()
    41         {
    42             
    43             @Override public void show()
    44             {
    45                 System.out.println("接口InnerClass中的show()...");
    46             }
    47         }.show();
    48         /*
    49             上面的这句报的错误:
    50 
    51             ClassInterface.java:40: 错误: 匿名类实现接口; 不能有限定符 - 对于新
    52                 outer.new InnerInterface()
    53                 1 个错误
    54         */
    55     }
    56 }

    下面可以运行:

     1 public static void main(String[] args)
     2         {
     3                 new Outer.InnerInterface()
     4                 {
     5                         @Override public void show()
     6                         {
     7                                 // TODO Auto-generated method stub
     8                                 System.out.println("覆盖没。。。。。");// 答:覆盖了!- -。
     9                         }
    10                 }.show();
    11         }
  • 相关阅读:
    APP高级抓包
    Linux使用日志
    ffmpeg使用记录
    win7 远程连接ubuntu
    v-2-r-a-y使用
    adb
    golang mysql 模糊查询
    交互式批量删除指定目录下指定类型文件
    golang打包和部署到centos7
    Nginx unknown directive ""
  • 原文地址:https://www.cnblogs.com/hacket/p/3122526.html
Copyright © 2011-2022 走看看