1-类(静态)方法:用static修饰
2-实例方法:不用static修饰
当类的字节码文件被加载到内存时,类的实例方法不会被分配入口地址,但类方法分配了相应的入口地址,因此:类的实例方法需要先创建对象,才会分配入口地址。
调用上:
类方法可以同时 类名.方法名 的方法直接使用
实例方法需要先用 new 先生成类再通过 实例.方法名 的方式调用。
public class test {
public static void main(String args[]){
Practice.SayHi();//静态变量,用类名+方法名 调用
Practice practice=new Practice();//实例变量,先生成类
practice.SayBye();//再用生成的类调用
}
}
public class Practice {
static void SayHi(){
System.out.println("Hi");
}
void SayBye(){
System.out.println("Bye");
}
}
结果:
使用上:
实例方法内部不能定义静态变量,会出现编译错误;
实例方法可以直接调用静态方法;
静态方法内部可以定义和使用实例变量;
静态方法无法直接调用实例方法;