1.封装
1.1封装的概念
封装指将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问,把尽可能多的东西藏起来,对外提供便捷的接口。
1.2封装的作用
Penguin p = new Penguin();
p.health = -1000;
上方的示例中,给健康值赋值的时候明显出现了不合理赋值,这种数据错误是不应该出现的!但是语法不会报错,这是因为健康值的数据类型是基本数据类型int,而int的取值范围也包括了-1000,并且对象也可随意去进行属性赋值。
1.3封装的使用
1.修改属性的访问修饰符类型为:private,这样外界就无法直接访问赋值
2.提供公共的访问方法:创建公共的getter/setter方法,给外部提供对应属性的设值和获取。
3.在getter/setter方法中加入逻辑判断控制语句,用来控制赋值范围
1.4JavaBean规范
javaBean规范,只要符合这种规范的类都叫JavaBean。
1.属性私有化。
2.提供无参构造。
3.提供公共的getter和setter方法
4.实现serializable接口。
2.包组织结构
2.1package命名规范
公司域名的倒叙,包名全部小写。
2.2为什么使用包?
因为在同一个文件夹下,是无法存放多个同名文件内容的,如果所有文件都放在一起,无法有效的进行区分和查找。
2.3如何使用包?
在定义好包之后,如果在包下定义类,类中一定要在有效代码的第一行添加package包声明。
3.访问修饰符
修饰符\作用域 | 同类 | 同包 | 子类 | 项目任何地方 |
---|---|---|---|---|
private | √ | × | × | × |
默认/包级访问修饰符 | √ | √ | × | × |
protected | √ | √ | √ | × |
public | √ | √ | √ | √ |
4.static关键字
- static修饰的信息是属于类的,它是随着类的加载而加载的。
- 我们没有被static修饰的信息是非静态/实例的,多个实例/对象之间的信息是相互隔离。而static修饰时被多个实例共享。
- 被static修饰的信息可以直接采用类名.的形式来调用,也可以使用对象来调用。