啃书出处
抽象类与接口:《Java语言程序设计》第14章
一维数组:《Java程序语言设计》第6章
primitive主数据类型和引用:《Head first Java》Ch 3
方法操作实例变量:《Head first Java》Ch 4
抽象类与接口
- 抽象类的由来
一个父类过于抽象,以至于没有任何具体的实例,如“宠物”。 - 抽象类&UML
抽象方法是斜体 - Tips
有抽象方法的一定是抽象类
抽象类不一定有抽象方法
抽象类不能new
抽象方法不是static的 - 接口
只包含常量和抽象方法 - 接口的用法
指明多个对象的共同行为,如”能喊的“、”能吃的“ - 接口的数据域
数据域都是public final static,所有方法都是public abstract - Comparable接口
比较两个相同类型中较大者的方法 - Implement和abstract class的对比
类名可以类比成名词,接口名可以类比成形容词
一维数组
- 数组的声明
元素类型[] 引用变量 = new 元素类型[size]; - for-each loop
for( type name: arrayName) - 值传递(pass by value)
基本数据类型:传实参的值
数组类型:传引用 - 选择排序、插入排序、二分查找法
primitive主数据类型和引用
- primitive主数据类型是什么?
bool&char + 数值 + 浮点数 - 引用是什么?
代表位于heap(堆)的对象的存储地址
方法操作实例变量
- 值传递=通过拷贝传递
- 方法只能声明单一的返回值
- 封装的原理
将实例变量标记为private,利用pubblic getter(accessor) & public setter(mutator)来存取 - 实例变量和类变量
实例变量:没有使用static修饰的成员变量
类变量:使用static修饰的成员变量 - 实例变量永远都会有默认值
- 实例变量是声明在类中的,而不是方法中的。
- 局部变量是声明在方法中的。
- 局部变量在使用前必须初始化。
- 局部变量没有默认值。如果在变量被初始前就使用,编译器会显示错误。
- == & .equals()(同《Java语言程序设计》)
==:数据类型 or 是否引用同一个对象
.equals():相同的内容
Extra
- 极限编程(XP):先编写测试用例