static 修饰符
tatic关键字的特点
static是一个修饰符,用于修饰类的成员方法、类的成员变量,另外可以编写static代码块来优化程序性能。
static修饰成员方法
static修饰的方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没有对象,就谈不上this了。并且由于这个特性,在静态方法中不能访问类的非静态成员变量和非静态成员方法,因为非静态成员方法/变量都必须依赖具体的对象才能够被调用。
但是要注意的是,虽然在静态方法中不能访问非静态成员方法和非静态成员变量,但是在非静态成员方法中是可以访问静态成员方法/变量的。例如:
class Myboject{
private static String str = "staticProperty";
private String str1 = "property";
public Mybojiect(){
}
public void print(){
System.out.println(str);
System.out.println(str1);
print1();
}
public static void print1(){
System.out.println(str)