请根据以下示例代码选择正确的选项( )
public class Test {
static int a;
int b;
public Test() {
int c;
c = a;
a++;
b += c;
System.out.println("one");
}
public void Test() {
int c;
c = a;
a++;
b += c;
System.out.println("two");
}
public static void main(String args[]) {
Test t = new Test();
}
}代码将无法编译,因为有一个方法与类名相同
代码将无法编译,因为有两个名称和参数相同的构造函数
代码编译失败的原因是构造函数试图访问静态变量
代码可以编译,但运行时会失败
代码会编译并成功运行。它将打印one
代码将编译并成功运行。将打印two
java中的构造方法可以有很多,可以带参数也可以不带参数,但是也可以显式指定构造方法,
那么普通的方法可不可以和构造方法同名呢?
答案是可以,比如以下的代码。MethodName 的构造方法就和一个普通类方法同名而且参数列表相同。但是编译器不会建议我们这么做。它会给我们一个警告。
那么普通的方法可不可以和构造方法同名呢?
答案是可以,比如以下的代码。MethodName 的构造方法就和一个普通类方法同名而且参数列表相同。但是编译器不会建议我们这么做。它会给我们一个警告。