隐藏和封装
封装是面向对象的三大特性之一,它指的是将对象的状态信息隐藏在对象内部,不允许程序直接访问对象内部信息,而是通过该类所提供的方法实现对内部信息的操作和访问。
package zuoye;
public class Hero {
private String nameString;
private int age;
public Hero(String nameString,int age) {
this.nameString=nameString;
this.age=age;
}
public void nn() {
System.out.println("英雄名字是"+nameString+"年龄为"+age);
}
}
如果没有构造方法里面没有this则会报错,如下图
这就是private关键字的作用,隐藏对象的属性,不允许外部直接访问
static关键字
静态成员变量是被static关键字修饰的成员变量
静态成员变量可通过类直接访问。
如下图所示
import java.util.Iterator;
public class Bank {
private static int count=50000;
public static void main(String[] args) {
for(int i=0;i<10;i++) {
Bank bank=new Bank();
bank.count=bank.count-100;
System.out.println("当前银行总钱数="+Bank.count);
}
}
}
总结:
- 修饰符有优先级 private–default–protected–public
- 封装不在同一个包不能调用访问,需要用到this关键字
- 类中包含多个静态代码块,会按顺序依次执行且静态代码只会执行一次