如题,java中能否判断出一个类的实例对象是通过该类的哪个构造方法实例化的?
应该没有内置检查方法吧,可以使用如下方式判断:
public class B {
String x = "E" ;
B()
{
init() ;
}
B(String x)
{
this() ;
this.x = x ;
}
void init()
{
}
public static void main(String[] args) {
B b_1 = new B() ;
b_1 = new B("A") ;
b_1 = new B("C") ;
}
}
没有其他操作的时候就是默认的,有其他操作的时候就是根据实例化时候参数的数量和类型区别了,肯定是对应的构造方法,比如三个构造方法。