Encapsulation[JAVA]
1.什么是封装性
1.1封装核心
- 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式
- 打个比喻来说,一个手电筒,用户只需要知道开关和充电的功能即可
- 内部的电路板,元器件需要进行封装隐藏起来
1.2封装原则
- 将不需要对外提供的内容都隐藏起来
- 把属性隐藏,提供公共方法对其访问
1.3封装的好处
- 隐藏实现细节,提供公共的访问方式
- 提高了代码的复用性,提高安全性
1
2
3
4
5
6
7
8
9
10
11class test{
private int age; //修饰属性
private String name;
public test(){ //修饰构造器
}
public void eat(){ //修饰方法
}
}
1.4高内聚 低耦合
高内聚:类的内部数据操作细节自己完成,不允许外部干涉
低耦合:仅对外暴漏少量的方法用于使用
1.5属性的获取
在对一个属性私有化的同时,除了提供公共的设置方法外,还需要提供获取方法
即 set方法与get方法
两种方法共同构成了属性的获取
注:这只是封装性的一种体现,并不能完全代表封装性
1 |
|
2.权限修饰符
| 类型 | 本类 | 同一个包下 | 不同包下 | 同一个工程下 |
| —- | —- | —- | —- | —- | —- |
| private | √ | x | x | x |
| 缺省 | √ | √ | x | x |
| protected | √ | √ | √ | x |
| public | √ | √ | √ | √ |
2.1用法
- 封装的体现需要权限修饰符配合
- 四种权限修饰符都可以修饰类及类的内部结构:属性、方法、构造器、内部类
- 修饰类的话只能用:pulibc或者缺省
3.再谈封装性
Java提供了四种不同的权限修饰符来修饰类及其类的内部结构
体现了类和类的内部结构在被调用时候的可见性大小
4.构造器
4.1构造器核心
- 就是用来造对象的,就是在你创建对象时候new后面就是
- 若我们没有去定义类的构造器,系统会默认创造一个空参的构造器
- 若我们给出了构造方法,系统将不再提供默认的无参构造器
- 如果我们还想使用无参构造方法,就必须自己给出,建议永远自己给出无参构造方法
- 一个类中可以定于多个构造器,就构成了构造器的重载
4.1.1作用
- 创建对象
- 初始化对象信息
4.2格式特点
- 方法名和类名相等
- 没有返回值类型
- 没有具体的返回值,但是可以写return\也可以不写
1 |
|
4.3属性赋值
属性赋值的先后顺序:
默认初始化>显示初始化>构造器初始化>开发常用的
通过对象.方法或对象.属性的方式赋值
开发常用比较灵活
4.3JavaBean了解
符合如下标准的Java类:
- 类是pulic的
- 有一个空参的public构造器
- 有属性,且对应的get、set方法
5.this关键词
5.1this的作用
- this可以修饰或调用 属性 方法 构造器
- this修饰属性和方法时 this可以理解为当前对象 或当前正在创建的对象
- 主要是为了区分属性和局部变量,当两者相同时候属性前加上this即可
1 |
|
5.2this调用构造器
- 类的构造器中,可以以this(形参列表)的方式,调用本类中指定的其他构造器
- 构造器不可以以this(形参列表)方式去调用自己
- this(形参列表)必须写在构造器的第一行
- 最多只能声明一个this(形参列表),用来调用其他构造器
1 |
|
Encapsulation[JAVA]
http://example.com/2022/03/28/Java初级部分/OOP/Encapsulation/