1:关键字static
属于类,方便在没有创建对象的情况下来进行调用(方法/变量),但是static方法不能访问非静态的类,因为非静态的类是属于对象的。
static变量,为静态成员变量,类被初次加载的时候初始化值,被对个对象共享,方便优化代码。
类的执行是从main方法,但是执行前先加载类(加载时注意有没有static方法/变量),在进行构造函数等。
public class Test extends Base{
static{
System.out.println("test static");
}
public Test(){
System.out.println("test constructor");
}
public static void main(String[] args) {
new Test();
}
}
class Base{
static{
System.out.println("base static");
}
public Base(){
System.out.println("base constructor");
}
}
结果:
base static
test static
base constructor
test constructor
2:JAVA 面向对象的理解
把数据和操作放在一起,作为一个不可分割的整体。不同对象通过公共接口进行通信,完成相应的功能。
private被该类中访问,public类外也可以访问,protected包中访问;