class A{
A a = new A();
}
我晕了,想不明白。编译能过,运行不行。但是加个static或者不构造又可以运行。能好好说说到底怎么个回事吗?
错误提示at FF.TTT.<init>(A.java:4)
class A{
A a = new A();
}
我晕了,想不明白。编译能过,运行不行。但是加个static或者不构造又可以运行。能好好说说到底怎么个回事吗?
错误提示at FF.TTT.<init>(A.java:4)
不是的,你可以选择不添加构造方法,因为java中默认的有一个构造方法,构造方法的使用与否全看你自己的操作需求,但是一旦你创建了构造方法,java虚拟机将不再采用默认的无参的构造方法,而使用你定义的构造方法
你的JDK是什么版本?
你的程序当然编译有问题的,没有main
而这个与声明并构造自己无关,以下程序可以编译运行的(JDK 1.8.0_131)
class A{
A a = new A();
public static void main(String[] args) {
}
}