Java一种错误的实例化方法:在默认无参构造函数中进行实例化

Posted guomutian911

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java一种错误的实例化方法:在默认无参构造函数中进行实例化相关的知识,希望对你有一定的参考价值。

Java一种错误的实例化方法:在默认无参构造函数中进行实例化

代码如下:

package Construction_test;

public class A 
	
	static int i=0;
	
	public A()   //默认构造方法
		i++;
		System.out.println("---before--- " + i);
		A a2 =new A();   //实例的时候调用无惨构造方法
		System.out.println("---after---");
	

	public static void main(String[] args) 
		
		A a1 =new A();
		
	


运行结果:


分析:

这种写法在编译时并不会报错,但在运行的时候会造成严重后果,即无参构造函数自身的循环调用,最终导致内存溢出。因此,在写类似的代码时要特别注意该情况的发生。



以上是关于Java一种错误的实例化方法:在默认无参构造函数中进行实例化的主要内容,如果未能解决你的问题,请参考以下文章

Java动手动脑3

为啥使用set注入,一定要给类提供一个无参的构造函数,否则Spring不能实例化类的.

java继承

Java中子类继承父类关于构造方法的问题:there is no default constructor available in

JAVA基础学习-构造方法

类和对象