第八章 接口与内部类
2013-08-24 12:28
183 查看
接口(interface)和内部类(inner class)为我们提供了一种用来组织和控制系统中的对象的
更加精致的方法。
C++就不包含这些机制,尽管聪明的程序员可以自己去模拟实现它们。在 Java
中存在着这
些机制的事实表明它们是如此重要,以至于要通过语言中的关键字直接提供对它们的支持。
在第 7 章中,你已经学习过了有关 abstract 关键字的知识,它允许你在一个类中创建一个或
多个没有任何定义的方法——你提供了接口部分,但是没有提供任何相应的具体实现,这些
实现是由此类继承者创建的。interface 这个关键字产生了一个完全抽象的类,它根本就没有
提供任何具体实现。你将学习到接口不仅仅只是一个极度抽象的类,因为它允许你通过创建
一个能够被向上转型为不止一种基类型的类,来实现一种 C++多重继承(multiple inheritance)
的变种。
乍看起来,内部类就像是一种简单的代码隐藏机制:你将某些类置于另外一些类的内部。然
而,你将认识到内部类能够比这做得更多——它了解它的外围类(surrounding class),并且
能够与之通信。尽管对多数人来说,内部类还是个新概念,但是那种你可以编写的带有内部
类的代码仍然显得更加雅致和清晰。当然,要想让使用内部类进行设计使人觉得轻松自在,
还是得花些功夫的。
更加精致的方法。
C++就不包含这些机制,尽管聪明的程序员可以自己去模拟实现它们。在 Java
中存在着这
些机制的事实表明它们是如此重要,以至于要通过语言中的关键字直接提供对它们的支持。
在第 7 章中,你已经学习过了有关 abstract 关键字的知识,它允许你在一个类中创建一个或
多个没有任何定义的方法——你提供了接口部分,但是没有提供任何相应的具体实现,这些
实现是由此类继承者创建的。interface 这个关键字产生了一个完全抽象的类,它根本就没有
提供任何具体实现。你将学习到接口不仅仅只是一个极度抽象的类,因为它允许你通过创建
一个能够被向上转型为不止一种基类型的类,来实现一种 C++多重继承(multiple inheritance)
的变种。
乍看起来,内部类就像是一种简单的代码隐藏机制:你将某些类置于另外一些类的内部。然
而,你将认识到内部类能够比这做得更多——它了解它的外围类(surrounding class),并且
能够与之通信。尽管对多数人来说,内部类还是个新概念,但是那种你可以编写的带有内部
类的代码仍然显得更加雅致和清晰。当然,要想让使用内部类进行设计使人觉得轻松自在,
还是得花些功夫的。
相关文章推荐
- java编程思想概括(第八章)---接口与内部类
- Think in java 第八章 多态 第九章 接口 第十章 内部类
- 第八章 接口与内部类
- Thinking in Java 第七章 多态 第八章:接口与内部类 第九章:异常处理
- 黑马程序员——继承、多态、内部类和接口
- Java基础之接口与抽象类及多态、内部类
- java/final变量,final函数,抽象类,接口,内部类,object类
- [core java学习笔记][第六章接口与内部类]
- Java基础课程-接口、内部类、回调函数讲解
- 内部类的作用?1、抽象类中包含一个内部接口如何实现与调用 ;2、接口中包含一个内部抽象类如何调用
- 第8章 接口与内部类
- Anonymous Inner Class (匿名内部类)是否可以继承其他类,是否可以实现接口?
- Java之接口与内部类6.1.1
- 接口中的内部类
- Java之接口,抽象类,内部类
- Java基础——面向对象——继承、抽象类、接口、多态、包、内部类、异常等
- [学习笔记] Java核心技术 卷一:基础知识 接口、lambda表达式与内部类(三)
- 用内部类实现接口的例子
- 51CTO大数据学习003-抽象类、接口、内部类
- 接口与内部类