class One { Sad ww = new Sad(); ww.one(); public void one() { ww.one(); } }
时间: 2024-06-06 18:08:01 浏览: 9
This code will result in a StackOverflowError because it creates an instance of the Sad class and calls its one() method in the constructor of the One class. Then, the one() method of the One class is called, which calls the one() method of the Sad class again, leading to an infinite loop and eventually causing a stack overflow.
相关问题
为什么class One { Sad ww = new Sad(); ww.one(); public void one() { ww.one(); } }
这段代码存在语法错误,无法通过编译。首先,类中的成员变量和方法不能交叉定义,需要先定义完成员变量再定义方法。其次,在方法中调用成员变量的方法需要在方法外先初始化该成员变量。正确的代码应该是:
```
class One {
Sad ww = new Sad();
public void one() {
ww.one();
}
}
class Sad {
public void one() {
System.out.println("one");
}
}
```
这段代码定义了两个类,其中One类中有一个Sad类型的成员变量ww,同时定义了一个one方法来调用ww的one方法。在实际调用时,需要先创建One对象,然后调用其one方法来输出"one"。
为什么是语法错误的class One { Sad ww = new Sad(); ww.one(); }
这段代码存在语法错误,原因是在类的外部调用了类的方法,应该在方法内部调用。正确的代码应该是:
```
class One {
public static void main(String[] args) {
Sad ww = new Sad();
ww.one();
}
}
```
其中,main方法是程序的入口方法,需要在类中定义。在main方法中,实例化了Sad类的对象ww,并调用了它的one方法。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)