1.方法调用
static方法可以直接使用 类名.方法名() 调用
非static方法则需要用对象调用 new 类名() . 方法名()
static方法可以调用static方法, 但不能调用非static方法
因为static方法是属于类的,非static方法是属于对象的。
当static方法调用非static方法时,有可能类还没有实例化,这时不存在对象,所以非static方法也不存在了,所以不能这样调用。
反过来说,非static方法可以调用任何类型方法(无论是不是static)
2.构造方法
构造方法的名字与类名相同,且没有返回值
使用new关键字创建对象,包括了为对象分配内存空间并返回一个指向该内存的引用,调用构造方法来初始化对象
构造方法用于初始化类的属性
一个空类一般会默认有一个默认构造方法
不用程序员写,编译后的.class文件里会自动添加
public class Demo1 {
public Demo1() {
}
}
但是若程序员定义了一个有参数的构造方法,再使用无参构造方法,则必须显示定义一个无参构造方法。