构造函数泄露this是什么意思有什么问题么
public class Javahqx extends javax.swing.JLabel implements cantime { static sLtime slt = sLtime.getsLtime(); public Javahqx() {
super();
slt.add("qqxx", 30, this);
}
public class Javahqx extends javax.swing.JLabel implements cantime { static sLtime slt = sLtime.getsLtime(); public Javahqx() {
super();
slt.add("qqxx", 30, this);
}
一般来说构造函数里面只完成对数据的初始化。至于其他的操作。在thinking in java里面。是不建议的。
2、楼主的目的应该可能是,构造一个对象后,需要立刻将其在slt对象中进行一些维护;为防止多线程,可以对init方法进行同步化。
synchronize init(){
.....
.....
}
它本身就是用this做为同步锁。
只是一点最基本的方法,仅供参考。
+1在构造方法里,把this传给了其他对象(slt)的方法调用,也就是把this泄露给了外部