对象实例是何时被创建

2012-11-12
    对象实例何时被创建,这个问题也许你用一句话就能回答完了。但是它的潜在陷阱却常常被人忽视,这个问题也许并不像你想的那么简单,不信请你耐心看下去。
    我前几天问一个同学,是不是在调用构造函数后,对象才被实例化?他不假思索的回答说是。
    请看下面代码:
    Java代码
    Date date=new Date();
    em.out.println(date.getTime());
    新手在刚接触构造函数这个概念的时候。他们常常得出这样的结论:对象实例是在调用构造函数后创建的。因为调用构造函数后,调用引用(date)的实例方法便不会报NullPointerException的错误了。
    二、经验者的观点
    然而,稍稍有经验的Java程序员便会发现上面的解释并不正确。这点从构造函数中我们可以调用this关键字可以看出。
    请看下面代码:
    Java代码
    public class Test
    {
    public Test()
    {
    this.DoSomething();
    }
    private void DoSomething()
    {
    System.out.println("do init");
    }
    }    
    这段代码中我们在构造函数中已经可以操作对象实例。这也就证明了构造函数其实只是用于初始化,早在进入构造函数之前。对象实例便已经被创建了。

    编辑特别推荐:

    40个轻量级JavaScript库介绍

    Java网络编程:实现HTTP模拟器

    使用NetBeans开发Firefox插件

分享到:
0
相关阅读
友情链接
© 2018 我考网 http://www.woexam.com 中国互联网举报中心 湘ICP备18023104号 京公网安备 11010802020116号
违法和不良信息举报:9447029@qq.com