在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。
需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
需要特别注意:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
2015-07-22
静态方法
1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员.如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。
2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量.
3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法
1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员.如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。
2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量.
3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法
2015-07-22
已采纳回答 / 管理員
takePeopleAutos = takePeopleAutos + ( " " + car.autoName );a = a + b;//简写成 a+=b;
2015-07-22
看到最后,父类要是没有无参的构造方法,而子类又隐式的调用父类无参的构造方法,这里报错啦。所以说父类有参子类就调有参呗,父类无参,子类才可以隐式直接调用父类的构造方法。
2015-07-22
学到这里我想知道,super关键字实际杂用的,你看在子类中重载了方法了,然后再使用super关键字调用父类方法,还不如就直接子类调用父类方法得了,干嘛重载了又再使用super方法呢。平常编程都是这么的绕吗?
2015-07-22
public class HelloWorld {
// 定义静态变量,保存班级名称
static String className = "JAVA开发一班";
public static void main(String[] args) {
// 访问静态变量,输出班级名称
System.out.println(className);
}
}
// 定义静态变量,保存班级名称
static String className = "JAVA开发一班";
public static void main(String[] args) {
// 访问静态变量,输出班级名称
System.out.println(className);
}
}
2015-07-22
学过PHP之后 真心的感觉这个outer.this.attr 的方式反人类啊 用outer.attr 不好么
很容易当成还是在访问内部类的属性
很容易当成还是在访问内部类的属性
2015-07-22
抽象类使用规则
a. abstract定义抽象类;
b. sbstract定义抽象方法,只有声明,不需要实现;
c. 包含抽象方法的类是抽象类;
d. 抽象类中可以包含普通的方法,也可以没有抽象的方法;
e. 抽象类不能直接创建,可以定义引用变量。
a. abstract定义抽象类;
b. sbstract定义抽象方法,只有声明,不需要实现;
c. 包含抽象方法的类是抽象类;
d. 抽象类中可以包含普通的方法,也可以没有抽象的方法;
e. 抽象类不能直接创建,可以定义引用变量。
2015-07-21