《Thinking in java》第七章 复用类
发觉这一章并不是一些什么基础,却蕴含java编程的一些常规思想,设计模式的雏形。
7.1 组合语法
一个类包含另一个类的引用。
初始化引用的四种方法:
1.定义即初始化,保证了在调用构造器前初始化
2.在类的构造器中
3.正要使用这些类之前,惰性初始化
4.使用实例初始化
7.2 继承语法
为每一个类添加main()方法,方便单元测试。
数据成员指定为private,方法指定为public
7.2.1 初始化基类
当创建一个导出类的对象时,该对象包含了一个和基类的子对象,这个对象和直接用基类创建的对象完全一样,只是说这个对象包含在导出类对象的内部。
在初始化导出类时,从内到外,先调用基类的构造方法,在调用导出类的构造方法。并且导出类一定会调用基类的构造方法。
带参数的构造器
如果基类中的构造器带参数,那么导出类的构造器中一定要显示的调用基类的构造器super(i)并传入合适的参数。
7.3 代理
组合和继承的中庸之道。
7.4 结合使用组合和继承
7.4.1 正确清理
7.4.2 名称屏蔽
7.5在组合和继承之间进行选择
在新类中嵌入某个对象,让其实现所需要的功能,但新类中的用户看到的是新类所定义的接口,而不是嵌入类的接口。需要在新类中嵌入一个现有类的private对象。
7.6 protected关键字
尽大限度的隐藏
7.7 向上转型
继承的最重要的方面不是继承基类的方法,而是新类和基类之间的关系,即“新类是现有类的一种类型”。
慎用继承。
7.8 final关键字
7.8.1 final数据
public可用于包外
static只有一份
final不能改变
final static基本类型用大写命名,字与字之间用下划线隔开。
分享到:
相关推荐
通信原理:第七章 多路复用.ppt
MIMO-OFDM无线通信技术及MATLAB实现》随书源码。...第7章 PAPR 第9章 MIMO信道容量 第10章 天线分集与空时编码技术第 11章 空间复用的MIMO系统的信号检测 第12章 在发射端利用信道状态信息 第13章多用户MIMO
本章为该课程的其中一个章节 【全部课程列表】 第1章-程序设计基本方法 共45页.pptx 第2章-Python语言基本语法元素 共46页.ppt ...第7章-Python标准库概览 共47页.ppt 第8章-Python第三方库概览 共60页.ppt
本章为该课程的其中一个章节 【全部课程列表】 第1章-程序设计基本方法 共45页.pptx 第2章-Python语言基本语法元素 共46页.ppt ...第7章-Python标准库概览 共47页.ppt 第8章-Python第三方库概览 共60页.ppt
《C++课件第7章 清华大学老师 郑莉》的讲解主要围绕C++中的一个重要概念——继承与派生展开。继承是面向对象编程的一个核心特性,它允许我们创建新类(派生类)来扩展或修改已存在的类(基类)的功能,而无需重复...
#### 第 7 章 复用类 第七章探讨了类的继承和复用。继承是一种重要的面向对象特性,允许一个类继承另一个类的属性和方法。本章讲解了如何定义子类、覆盖父类的方法以及使用super关键字调用父类的构造函数等内容。...
第7章 复用类 第8章 多态 第9章 接口 第10章 内部类 第11章 持有对象 第12章 通过异常处理错误 第13章 字符串 第14章 类型信息 第15章 泛型 第16章 数组 第17章 容器深入研究 第18章 Java I/O系统 第19章 枚举类型 ...
《深入.NET平台和C#编程》第七章的内容涵盖了.NET框架的核心概念、C#语言的高级特性以及如何在实际开发中应用这些技术。本章旨在帮助读者深入理解.NET平台的工作原理,提升C#编程技能,从而更好地利用.NET进行软件...
非静态实例初始化 5.8 数组初始化 5.8.1 可变参数列表 5.9 枚举类型 5.10 总结 第6章 访问权限控制 第7章 复用类 第8章 多态 第9章 接口 第10章 内部类 第11章 持有对象 第12章 通过异常处理错误 第13章 字符串 第...
MIMO-OFDM无线通信技术及MATLAB实现》随书源码。...第7章 PAPR 第9章 MIMO信道容量 第10章 天线分集与空时编码技术第 11章 空间复用的MIMO系统的信号检测 第12章 在发射端利用信道状态信息 第13章多用户MIMO
B.Sklar的数字通信-基础与应用第二...第7章 信道编码(二) 第8章 信道编码(三) 第9章 调制和编码的权衡 第10章 同步 第11章 多路复用和多址接入 第12章 扩频技术 第13章 信源编码 第14章 加密和解密 第15章 衰落信道
《使用Java理解程序逻辑》第七章,主要涵盖了Java编程中的一些关键概念和技巧,旨在帮助读者深入理解如何通过Java语言构建有效的程序逻辑。本章内容可能包括但不限于控制流程、循环结构、条件判断、函数(方法)的...
其次,扩展光载波的数量也是关键,通过波分复用(WDM)技术,可以在同一根光纤中同时传输多个不同波长的光信号,从而显著提升系统的总体容量。 波分复用(WDM)是一种在一根光纤中利用不同波长的光载波传输多个信道...
VB作业第七章很可能涉及了VB的基础知识以及一些进阶概念,如事件处理、控件交互和程序流程控制等。 在VB编程中,学习者通常会接触到以下几个关键知识点: 1. **基本语法与数据类型**:VB支持多种数据类型,如...
第七章“输入输出流”涉及C++的I/O库,如iostream,包括cin用于输入,cout用于输出。这一章可能讲解了基本的输入输出操作,如读取用户输入,打印输出,以及流的格式控制。 通过这七章的学习,学生将能够建立起对C++...
Java程序设计基础篇(第8版)的第七章主要涵盖了面向对象编程的重要概念和技术,包括类、对象、封装、继承和多态等核心主题。在这一章的学习中,编程题通常用于帮助读者深入理解这些概念并提升实际编程能力。下面将...
【标题】"Accp6.0 S1 JAVA 理解程序逻辑 第7章"涉及的是北大青鸟的Accp6.0_S1课程中关于Java编程语言的基础部分,特别是聚焦于程序逻辑的理解。在这一阶段的学习中,学生将深入掌握如何通过Java语言构建和控制程序的...
在软件工程领域,第四章和第七章被视为至关重要的章节,它们涵盖了面向对象技术与面向对象分析的核心概念。面向对象(Object-Oriented, OO)方法是现代软件开发中广泛采用的一种设计思想,它极大地提高了软件的可...
在学习MySQL数据库应用与开发时,第七章通常会介绍编程方面的基础知识,包括但不限于自定义变量、表达式、函数、以及控制流语句等内容。 首先,让我们从自定义变量开始。在MySQL中,变量分为用户会话变量和局部变量...