JAVA封装
目录
JAVA的封装
类 = 属性 + 方法 属性描述状态 方法描述行为动作
不带static关键字
对象被称为实例。 实例相关的有:实例变量(对象变量)、实例方法(对象方法,对象级别的方法,应该是一个对象级别的行为)。方法模拟的是对象的行为动作。 实例变量是对象变量。实例方法是对象方法。 实例相关的都需要先new对象,通过“引用.”的方式去访问。
带static关键字
带有static的方法怎么调用?通过“类名.”的方式访问。类名. 可以省略(在同一个类中。)
封装的实现
- 怎么进行封装,代码怎么实现? 第一步:属性私有化(使用private关键字进行修饰。)private 表示私有的,被这个关键字修饰之后,该数据只能在本类中访问。出了这个类,属性就无法访问了。私有的。 第二步:对外提供简单的操作入口。即1个属性对外提供两个set和get方法。外部程序只能通过set方法修改,只能通过get方法读取,可以在set方法中设立关卡来保证数据的安全性。
要想访问被private修饰的属性,需要对外提供方法;例如get和set方法
写一个方法专门来完成读。(get)
写一个方法专门来完成写。(set)
set和get方法都是实例方法,不能带static。实例方法的调用必须先new对象。
set和get方法书写规范:
- set方法长这个样子:
public void set+属性名首字母大写(1个参数){
xxx = 1个参数;
}
- get方法长这个样子:
public 返回值类型 get+属性名首字母大写(无参){
return xxx;
}
static关键字 2.1、static修饰的统一都是静态的,都是类相关的,不需要new对象。直接采用“类名.”访问。 2.2、当一个属性是类级别的属性,所有对象的这个属性的值是一样的,建议定义为静态变量。
通过“类名.”可以调用set和get方法吗?不行。 只有方法修饰符列表中有static的时候,才能使用“类名.”的方式访问,因为是实例方法。
空指针异常
空指针异常导致的最本质的原因是?空引用访问“实例相关的数据”,会出现空指针异常。