JAVA-初步认识-第十章-匿名内部类-应用

原文链接: http://www.cnblogs.com/wsw-bk/p/7841280.html

一.

JAVA-初步认识-第十章-匿名内部类-应用_第1张图片

inner内部类中方法的public必须带着,不然就编译失败?子类的权限要大于父类的权限么

JAVA-初步认识-第十章-匿名内部类-应用_第2张图片

上面截图是常见的形式。接下来,简化成匿名内部类。

JAVA-初步认识-第十章-匿名内部类-应用_第3张图片

按照之前谈论的匿名内部类写法,发现在多个方法时,书写有困难。

我们现在想对一个对象进行多个方法调用怎么办?起名字就行了,借用以前的经验。

给它起个名字,是按父类的类型起的,不是子类或者内部类,这样任然是匿名内部类。这也是多态的运用。

JAVA-初步认识-第十章-匿名内部类-应用_第4张图片

这就是我们所说的匿名内部类的基本应用。

匿名内部类的应用场景是这样的:

不超过三,是说一个或两个。传递?作为参数传递?

比如在主函数的下面,有一个inter类型的接口引用,

JAVA-初步认识-第十章-匿名内部类-应用_第5张图片

通常的做法就是上面截图中的那样,先创建类实现接口,再创建类的对象。挺疑惑的一点就是,为什么函数居然是以接口作为参数

但是这样我们觉着,定义一个类比较麻烦,可以把它简化一下,

JAVA-初步认识-第十章-匿名内部类-应用_第6张图片

为什么强调不超过三个呢?是因为方法特别多时,就意味着匿名内部类方法体内容比较多,这个对象就太胖了,阅读性就没有了。

简化是为了阅读,这么一弄就违背了初衷。

这个例子其实不是内部类,但是借用了匿名内部类的格式→错了,实现接口的那个类,确实是内部类。

 

转载于:https://www.cnblogs.com/wsw-bk/p/7841280.html

你可能感兴趣的:(JAVA-初步认识-第十章-匿名内部类-应用)