/*
static关键字注意事项
在静态方法中是没有this关键字的
对象创建完毕后,有了this 对象
没有没有创建对象,没有 this 对象
所以说,this代表当前对象的引用
注意: 静态的方法加载进来的时候,这个时候对象还没有创建呢,
对象都没创建,哪来的this呢? 所以不行
静态方法只能访问静态的成员变量和静态的成员方法
普通方法:
变量:访问普通的变量和 静态变量
方法:访问普通方法和静态方法
静态方法:
变量:访问静态变量
方法:访问静态方法
一句话: 静态只能访问静态
*/
class Student {
String name = "赵日天";
int age = 30;
static String country = "中国";
//普通
public void method(){
//普通变量
System.out.println(name +"---"+age);
//静态变量
System.out.println(country);
//System.out.println(this.name +"---"+this.age);
//调用方法
method2();
function2();
}
//静态方法
public static void function(){
//普通变量
//System.out.println(name +"---"+age);
//System.out.println(this.name +"---"+this.age);
//静态变量
System.out.println(country);
//访问普通方法
//method2();//错误: 无法从静态上下文中引用非静态 方法 method2()
//访问静态方法
function2();
}
//普通方法
public void method2(){}
//静态方法
public static void function2(){}
}
class StudentDemo {
public static void main(String[] args) {
//创建对象
Student s = new Student();
s.method();
}
}
|
|