面向对象和封装

类:是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性 特征和行为特征来描述该类事物。

现实中,描述一类事物:
属性:就是该事物的状态信息。
行为:就是该事物能够做什么。

对象

对象:是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性 和行为。

类与对象的关系

类是对一类事物的描述,是抽象的。
对象是一类事物的实例,是具体的。
类是对象的模板,对象是类的实体。

类的定义格式

面向对象和封装

对象的使用

创建对象:类名 对象名 = new 类名()
使用对象访问类中的成员:对象名.成员变量 对象名.成员方法()
面向对象和封装

对象内存图

只有一个对象的内存图:面向对象和封装
两个对象使用一个方法的内存图:面向对象和封装
两个引用指向同一个对象的内存图:面向对象和封装
使用对象类型作为方法的参数:面向对象和封装
使用对象类型作为方法的返回值:面向对象和封装

private关键字

使用格式:private 数据类型 变量名;
提供setXxx/getXxx方法访问成员变量。
面向对象和封装

this关键字

使用格式:this.成员变量名;

方法被哪个对象调用,方法中的this就代表那个对象。即谁在调用,this就代表谁。
例: public void setName(String name) {
//name = name;
this.name = name;
}

构造方法

定义格式:
修饰符 构造方法名(参数列表){
//方法体
}
注意事项
1.如果你不提供构造方法,系统会给出无参数构造方法。
2. 如果你提供了构造方法,系统将不再提供无参数构造方法。
3. 3. 构造方法是可以重载的,既可以定义参数,也可以不定义参数。