创建一个类
image.png
创建对象
image.png
new 类名();就是实例化,然后创建一个类的对象。
对象.变量就是赋值。
image.png
局部变量和成员变量
image.png
image.png
image.png
构造方法
image.png
image.png
image.png
image.png
image.png
image.png
静态成员或类成员
它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。
image.png
image.png
静态方法或类方法
image.png
注意:
1.静态方法可以直接调用同类中的静态成员,但不能直接调用非静态成员。
image.png
若要调用,则可以通过创建类的对象,然后通过对象来访问非静态变量。非静态方法调用同理。
image.png
2.在普通成员方法中,可以直接访问同类的非静态变量和静态变量。
image.png
静态方法是属于类的,内存必须为它分配内存空间,这个空间一直由静态方法占用,内存管理器不会由于静态方法没有被调用而将静态方法的存储空间收回,这样如果将所有的方法都声明为静态方法,就会占用大量的内存空间,最后是系统变慢。而普通的成员方法是由对象调用的,内存并不会一直为起分配内存,只有调用的时候才为其分配存储空间,而当其没有被调用时,存储空间就会被内存管理其收回,释放没有用的空间,提高的系统的运行速率!
初始化块
初始化块就是构造器的补充,经常用它来初始化参数。
image.png
如果用static修饰初始化块,就称为静态初始化块。静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值, 不能初始化普通的成员变量。
image.png
image.png
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象hello2时并未执行静态初始化块。