FL_jishu 2017-04-11 15:15 采纳率: 50%
浏览 1844
已采纳

Java匿名内部类的用法

先创建一个父类,在new一个对象时,重写父类的方法,这个匿名内部类怎么报错了,还是匿名内部类只能重写接口的方法,不能这样用?图片

  • 写回答

1条回答 默认 最新

  • 战在春秋 2017-04-11 21:52
    关注

    Java匿名内部类或者继承自某类,或者继承自某接口 (题目中outer即继承OutI接口)。

    需要保证 Pa类有定义,且也定义了eat方法,然后才能如图中代码这样使用。

    示例如下:

    public class AnonymousClassDemo
    {
      public static void main(String[] args)
      {
        Dog dog = new Dog() {  // anonymous class body closes here,dog contains an object of anonymous subclass of Dog.
          public void someDog ()
          {
            System.out.println("Anonymous Dog");
          }         
        }; 
    
        dog.someDog();
      }
    }
    
    class Dog
    {
      public void someDog()
      {
        System.out.println("Classic Dog");
      }
    }
    

    OutI接口有定义,且定义了show方法,所以out类就没报错。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 前台报错,加我微信帮我解决一下,15043457399
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题