封装性的代码体现
- 将类的属性xxx私化(private),同时,提供公共的(public)方法来获取(getXxx)和设置(setXxx)此属性的值
package object_oriented2;
/*
* 总结:属性赋值的先后顺序
* 1.默认初始化
* 2.显式初始化
* 3.构造器中赋值
* 4.通过对象.方法或者对象.属性赋值
* 先后顺序:1.2.3.4
*/
public class Usertest {
public static void main(String[] args) {
user u = new user(2);
u.setage(10);
u.getage();
System.out.println(u.age);
}
}
class user{
String name;
int age = 1;
public user() {
}
public user(int a) {
age = a;
}
public int getage() {
return age;
}
public void setage(int a) {
age = a;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
- 不对外暴露的私有的方法
- 单例模式(将构造器私有化)
- 如果不希望类在包外被调用,可以将类设置为缺省的。
Java规定的四种权限修饰符
权限从小到大顺序为:private < 缺省 < protected < public
具体的修饰范围
4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类
修饰类的话,只能使用:缺省、public