面向对象的基本特征:
1、封装
2、继承
3、多态
一、封装:
好处:(1)隐藏实现细节,方便使用者使用(2)安全,可以控制可见范围
如何实现封装:
通过权限修饰符
| 修饰符 | 本类 | 本包 | 其他包的子类 | 任意位置 |
| --------- | ---- | ---- | ------------ | -------- |
| private | √ | × | × | × |
| 缺省 | √ | √ | × | × |
| protected | √ | √ | √ | × |
| public | √ | √ | √ | √ |
权限修饰符可以修饰什么:
类(类、接口等)、属性、方法、构造器、内部类
类(外部类):public和缺省 属性:4种 方法:4种 构造器:4种 内部类:4种
通常属性的封装是什么样:
当然属性的权限修饰符可以是private、缺省、protected、public。但是我们大多数时候,见到的都是private,然后给它们配上get/set方法。
二、构造器
构造器的作用:
(1)和new一起使用创建对象
//调用无参构造创建对象
类名 对象名 = new 类名();
//调用有参构造创建对象
类名 对象名 = new 类名(实参列表);
(2)可以在创建对象的同时为属性赋值
声明构造器语法格式:
【修饰符】 class 类名{
【修饰符】 类名(){//无参构造
}
【修饰符】 类名(形参列表){//有参构造
}
}
构造器特点:
(1)所有的类都有构造器
(2)如果一个类没有显式/明确的声明一个构造器,那么编译器将会自动添加一个默认的无参构造
(3)如果一个类显式/明确的声明了构造器,那么编译器将不再自动添加默认的无参构造,如果需要,那么就需要手动添加
(4)构造器的名称必须与类名相同
(5)构造器没有返回值类型
(6)构造器可以重载