请问构造方法不可以被调用吗?
Java code
public class Test{
public static void main (String args[]){
P1 m1 = new P1();
m1.P1();//这句为什么不可以?构造方法不可以被调用吗?
}
}
class P1{
int n=9;
int nn;
P1(){
System.out.println("P1");
}
void P2(){
System.out.println("P2");
}
}
------解决方案--------------------构造方法是用来构造对象的的new对象时又java 虚拟机调用,不用我们显示调用
------解决方案--------------------首先声明 本人新手
如有错误 概不负责
可以在类的构造方法里调用类的其它构造方法。
构造方法是为了初始化类的实例,不能用对象调用构造方法
------解决方案--------------------楼主不必过分纠结于这个问题。
你可以换个角度来思考这个问题。
在java中,如果你想创建一个对象(非基本数据类型)。
必须在利用new 关键字在堆中申请空间,然后调用构造方法初始化对象,然后返回这个对象的引用。
例如 new people()
因为,java为了保证对象都被初始化。
才采用了这种机制。
所以不需要你人为来调用。
而且,因为构造方法是只有在对象创建时才可以调用的。
因为JVM自己调用完了。
所以也不允许你自己来调用。