Я знаю, что this(...)
используется для вызова одного конструктора класса из другого конструктора. Но можем ли мы использовать new
для того же?
Чтобы быть более понятным в вопросе, является ли строка-2 действительной? Если это (поскольку компилятор не подал жалобы), почему вывод null
not Hello
?
class Test0 {
String name;
public Test0(String str) {
this.name= str;
}
public Test0() {
//this("Hello"); // Line-1
new Test0("Hello"){}; // Line-2
}
String getName(){
return name;
}
}
public class Test{
public static void main(String ags[]){
Test0 t = new Test0();
System.out.println(t.getName());
}
}