尝试编译以下程序会产生怎么样的结果?()
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) } }
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 类名, 没有方法修饰符所以 (1) 处就是一个普通方法所以该类没有带参数构造方法 ,编译报错