深入构造器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入构造器相关的知识,希望对你有一定的参考价值。

构造器是一个特殊的方法,这个特殊的方法用于创建实例时执行初始化。

当创建一个对象时,系统为这个对象的实例变量进行默认初始化,这种默认的初始化把所有基本类型的初始变量设为0、false、null。

如果想改变这种默认的初始化,想让系统创建对象时就为对象的实例变量显式指定初始值,就可以通过构造器来实现。


public class ConstructorTest
{
     public String name;
     public int count;

    public ConstructorTest(String name ,int count)
     {
         this.name = name ;
         this.count = count ;
     }

    public static void main(String[] args)
     {
         ConstructorTest tc = new ConstructorTest("疯狂java讲义",90000);
         System.out.println(tc.name);
         System.out.println(tc.count);
     }
}

运行上述程序后,name实例的变量不再是null,而且count实例变量也不再是0,这就是提供自定义构造器的作用。

构造器只要用于被其他方法调用,用以返回该类的实例。

调用构造器时,系统会先为对象分配内存空间,并为这个对象的执行默认初始化,这个对象已经产生了。只是这个对象还不能被外界程序访问,只能在该构造器中通过this来引用。当构造器的执行体结束后,这个对象作为构造器的返回值被返回。通常还会赋给另一个引用类型变量,从而让外部程序可以访问对象。(this就好比我们有时候说话时想要指代某个事物,但说不上名字,就用“这个”“那个”来指代一样)

以上是关于深入构造器的主要内容,如果未能解决你的问题,请参考以下文章

深入构造器

《JavaScript设计模式》深入学习 —— Constructor(构造器)模式

为什么提供私有的构造器能保证一个类只有一个实例(有待深入)

Swift之深入解析构造过程

深入理解使用synchronized同步方法和同步代码块的区别

js深入理解构造函数和原型对象