马上毕业,最近去了2次面试都是java的,有段时间没做java了,面试的也很是郁闷这道为其中之一,本人稍加修改只为娱乐 o(∩_∩)o 哈哈 高手勿笑
import java.io.*;
class A{
private B b = new B();
public class B{
public void say(){
System.out.println("im b");
b.say();
}
}
public static void main(String[] args){
B b = new A().new B();
b.say();
}
}运行结果 看完马上答出来 看是否与结果相同
答案是 將會無限的執行say訪法,答到這裡你可以答下一個問題了 引起的原因是什麼,存在多少個B類的對象
答案是 存在兩個B類的對象可以運行下面的來得出結果
import java.io.*;
class D{
public static int num = 0;
private B b = new B();
public class B{
private String who = "in";
public B(){
D.num += 1;
};
public B(String who){
this.who = who;
D.num += 1;
}
public void say(){
System.out.print("im b"+who +" "+D.num);
b.say();
}
}
public static void main(String[] args){
D a = new D();
B b = a.new B("out");
b.say();
}
}
import java.io.*;
class A{
private B b = new B();
public class B{
public void say(){
System.out.println("im b");
b.say();
}
}
public static void main(String[] args){
B b = new A().new B();
b.say();
}
}运行结果 看完马上答出来 看是否与结果相同
答案是 將會無限的執行say訪法,答到這裡你可以答下一個問題了 引起的原因是什麼,存在多少個B類的對象
答案是 存在兩個B類的對象可以運行下面的來得出結果
import java.io.*;
class D{
public static int num = 0;
private B b = new B();
public class B{
private String who = "in";
public B(){
D.num += 1;
};
public B(String who){
this.who = who;
D.num += 1;
}
public void say(){
System.out.print("im b"+who +" "+D.num);
b.say();
}
}
public static void main(String[] args){
D a = new D();
B b = a.new B("out");
b.say();
}
}
解决方案 »
- Java怎样实现QQ的窗口自动隐藏效果
- 下面的两段代码是否是live变量的构造方法?我是用Eclipse自动生成的.人都是有遗忘的时候.
- Tocat
- 遇到这样的JAVA问题,在线等.
- 请问JAVA可以直接操作硬件吗?
- 如何在JTable中按回车键即可直接从一个Cell的编辑状态进入到下一个Cell的编辑状态?
- Java的线程问题
- 帮忙忙吧
- 急救!!!!!!!!!!!!!!Tomcat罢工=======>高分相谢
- 想找一个用java来实现九宫图,有人写过的吗?
- 求解:用相对路径访问classes目录外面的文件,以及用相对路径创建File和InputStream对象
- java如何对一个字符串生成唯一的编码
楼主写这个娱乐尚可,如果工作中写出new A().new B()的代码,如果我是你的boss,你懂的。
我是出题人的BOSS的话 应该把他FIRE掉!
public void say(){
System.out.println("im b");
say(); //自己调自己,无限递归无出口
}