1 static String className;
1 public static void getScore(){
}
1 String name;
1 public void getScore(){
}
static int age=0; //定义时手动初始化。
//静态块,为static变量初始化,静态块在首次类名出现时调用,但后于分配静态变量。
static{
age = 20;
}
静态块:
类名首次出现时,先为静态变量分配内存,然后调用静态块,静态块可以为静态变量初始化。静态块只在类名首次出现时调用一次,以后再也不调用了。
String name= "张三"; //定义时手动初始化。
Test(String name){ //带一个参数的构造方法。
this.name=name;
}
public static void main(String[] args) {
Test t1=new Test("张三"); //通过构造方法初始化。
}
public class Test {
static int age;
public static void main(String[] args) {
age = 2; //此方法正确,都是静态的,类名首次出现就分内存
}
}
public class Test {
public static void main(String[] args) {
}
public void sayHello(){
}
public static void sayHi(){ //报错,不知道sayHello()有没有
sayHello();
}
}
public class Test {
int age;
public static void main(String[] args) { //报错,不知道age属性有没有。
age = 2;
}
}
public class Test {
int age;
public static void main(String[] args) { //正确,创建对象new Test()调用属性age表明已存在age属性就能调用
new Test().age = 2;
}
}