尽管java是基于C++的,但是相比之下,java是一种更‘纯粹’的面向对象程序设计语言。
c++支持c语言的向后兼容,是c的一个超集。并不像java只支持OOP编程。
2.1 用引用操纵对象
对象与引用的关系就像气球和牵气球的线一样, 通过线我们可以操控气球。没有连接气球的线没有实际作用,将一个引用赋给另一个引用,是将两根线指向同一个对象。如果原来的气球没有线连接的话,就会飞走(垃圾回收)。
2.2 必须由你创建所有对象
堆栈:存放基本类型,引用。
堆:存放对象。
基本类型:直接在堆栈中创建对象,而并非引用。因为调用new方法在堆中创建对象对于小的,简单的变量不是很有效。
P1 方法签名
方法签名 = 方法名 + 参数列表,方法签名唯一的标识出某个方法。
P2 static 关键字
当声明一个事物是static时,就意味着这个域或方不会与包含它的那个类的任何对象关联在一起。
class StaticTest{
static int i = 47;
}
StaticTest st1 = new StaticTest();
StaticTest st2 = new StaticTest();
st1,st2指向同一个对象,如果改变st1.i的值,st2.i随之改变。因为他们本来就指向同一内存空间。
2.8 注释和嵌入式文档
以/**
开始,*/
结尾构建文档注释。
常见标签:
@author 作者信息
@param 方法的参数解释
@return 返回值的含义