`

说个以前不知道的事情

 
阅读更多

    1.看下面代码是合法的吗?

public  class Complex{
	
	private Complex instance=new Complex(2);
	public Complex(int i){
		System.out.println(i);
	}
	public static void main(String args[]){
		
		Complex complex=new Complex(1);
		
	}
}

 输出结果:

Exception in thread "main" java.lang.StackOverflowError

at com.wjy.enumstudy.Complex.<init>(Complex.java:8)

at com.wjy.enumstudy.Complex.<init>(Complex.java:8)

at com.wjy.enumstudy.Complex.<init>(Complex.java:8)

at com.wjy.enumstudy.Complex.<init>(Complex.java:8)

at com.wjy.enumstudy.Complex.<init>(Complex.java:8)

原因:出现了无限的递归。实例instance初始化操作是先于构造器的程序体而运行的。

 

    2.看看下面的代码就不会出错了:

public  class Complex{
	
	private static Complex instance=new Complex(2);
	public Complex(int i){
		System.out.println(i);
	}
	public static void main(String args[]){
		
		Complex complex=new Complex(1);
		
	}
}

 运行结果:

2

1

 

3.最后看这个:

public  class Complex{
	
	private static Complex instance=new Complex(2);
	public Complex(int i){
		System.out.println(i);
	}
	public static void main(String args[]){
		
		//Complex complex=new Complex(1);
		
	}
}

 输出结果:

2

分享到:
评论

相关推荐

    我以前所不知道的事

    - 文章通过个人成长的回忆,展现了一个不断学习和适应社会要求的过程。作者在年轻时的行为和后来的思考形成了鲜明对比,说明了随着时间的推移,人的观念和行为模式是可以改变的。 - 作者意识到自己过去的一些想法...

    《你必须知道的495个C语言问题》

    《你必须知道的495个C语言问题》以问答的形式组织内容,讨论了学习或使用C语言的过程中经常遇到的一些问题。书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预...

    你必须知道的495个C语言问题

    1.24 我在一个文件中定义了一个extern数组,然后在另一个文件中使用,为什么sizeof取不到数组的大小? 声明问题 1.25 函数只定义了一次,调用了一次,但编译器提示非法重声明了。 *1.26 main的正确定义是什么...

    你必须知道的495个C语言问题(PDF)

    我们不知道a[] 的哪一个分量会被改写,但i 的确会增加1, 对吗? . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.9 ++i 和i++ 有什么区别? . . . . . . . . . . . . . . . . . . . . . . 15 3.10 如果我不...

    programmingPortfolio:这是我以前作品的展览,也是关于我的一些事

    不知道作为关闭版本的错误。 使用的技术 我整合了 Bootstrap 来设计导航栏的样式、我的项目的轮播以及带有导航链接的页面导航。 CSS 被广泛用于设计网站样式。 内容是使用 HTML 添加的。 支持和联系方式 我是软件...

    一个真实的病毒世界

    很久以前,我还很小的时候,有一本最喜欢的杂志就叫这个名字,最近好长时间没有机会看到这本杂志了,不知道现在这份杂志是不是还存在。在当时,这份杂志告诉我一个全新的世界,从飞往外太空的迭达罗斯飞船到如何从...

    通用权限的数据库的设计,PowerDesigner

    不知道这个是不是可以叫做“抽象”。这个就是在金字塔的顶端来看权限了,站在顶端来看,就这么一点,估计没有那种情况可以逃出这个描述吧。 资源:这里指的资源是广义上的资源,包括很多的东东,模块、数据,菜单、...

    深入理解Android之Gradle.pdf

    但是当时我一直不知道这是什么东西。 而且大法工具组的工程师还将其和Android Studio 大法版一起推送,偶一看就更没兴趣了。 为什么那个时候如此不待见Gradle 呢?因为我此前一直是做ROM 开发。在这个层面上,我 们...

    一个真实的病毒世界,讲述病毒的相关知识

    很久以前,我还很小的时候,有一本最喜欢的杂志就叫这个名字,最近好长时间没有机会看到这本杂志了,不知道现在这份杂志是不是还存在。在当时,这份杂志告诉我一个全新的世界,从飞往外太空的迭达罗斯飞船到如何从...

    C#23种设计模式_示例源代码及PDF

    6、ADAPTER —在朋友聚会上碰到了一个美女 Sarah,从香港来的,可我不会说粤语,她不 、 会说普通话,只好求助于我的朋友 kent 了,他作为我和 Sarah 之间的 Adapter,让我和 Sarah 可以相互交谈了(也不知道他会不会...

    SAP access key 运算器

    因为学习业务的缘故从SAP NetWeaver 7.0 ABAP Trial Version再度改用R/3 4.71,Access Key真是个讨人厌的东西,以前的破解方式使用起来还是不太方便,如果操作失败了会是件很上火的事情。 听说过破解器,现在让我撞...

    与上司谈话技巧.docx

    2. 奇异闪避你不知道的事句型:当上司问了我们某个与业务有关的问题,而我们不知道该如何做答时,可以使用这个句型,例如:“让我再仔细的想一想,三点以前给您答复好吗?” 3. 面对批判要表现冷静句型:当我们的...

    与上司谈话技巧_1.docx

    1. 奇异闪避你不知道的事句型:让我再仔细的想一想,三点以前给您答复好吗? 当上司问了你某个与业务有关的问题,而你不知该如何做答时,不要随意回答「不知道」。这句型不仅临时为你解危,也让上司认为你在这件...

    平凡的单片机教程.chm

    可是到这里还根本不知道一个单片机开发的完整过程是什么,什么是编程器还不知道。后面的就不说了,总之,现在教材,基本都是以单片机为蓝本来学习计算机原理,而不纯为学习单片机技术,在教材、教学过程的安排上又...

    《单片机入门教程》chm

    可是到这里还根本不知道一个单片机开发的完整过程是什么,什么是编程器还不知道。后面的就不说了,总之,现在教材,基本都是以单片机为蓝本来学习计算机原理,而不纯为学习单片机技术,在教材、教学过程的安排上又...

    博弈论-完全信息动态博弈.pdf

    该参与人知道博弈进入该集合的某个决策结,但不知道自己究竟出于哪一个决策结(若该信息集有两个或两个以上元素)。 完美回忆 完美回忆是指没有任何参与人会忘记自己以前知道的事情,所有参与人都知道自己以前的...

    windows批处理

    批处理的定义,至今我也没能给出一个合适的----众多高手们也都没给出----反正我不知道----看了我也不一定信服----我是个菜鸟,当然就更不用说了;但我想总结出一个“比较合适的”,而且我也相信自己可以把它解释的很...

    论文研究 - 在线世界语言焦虑量表(OWLAS)

    从某些方面来看,这项研究的结果证实了外语教育者已经知道的事情:学生更喜欢写作而不是说话,更喜欢与教师互动而不是与同龄人互动,并且跟上工作进度有时是一个挑战。 此外,如果学生不了解其母语的基本语法要素,...

Global site tag (gtag.js) - Google Analytics