public class MyClass {
long var;
public void MyClass(long param) { var = param; }//(1)
public static void main(String[] args) {
MyClass a, b;
a =new MyClass();//(2)
b =new MyClass(5);//(3)
}
}
尝试编译以下程序会产生怎么样的结果?()
编译错误将发生在(1),因为构造函数不能指定返回值编译错误将发生在(2),因为该类没有默认构造函数
编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数
该程序将正确编译和执行
答案为第三句
注意:这个public void MyClass(long p)可不是一个构造方法!!!仅仅是一个返回值类型为void的普通方法,一i的那个要记住构造函数的格式
public(或者其他访问修饰符) 类名(参数可有可无){}