美文网首页计算机程序设计
十二:类的构造方法

十二:类的构造方法

作者: 阳光流影 | 来源:发表于2018-11-29 17:04 被阅读0次

我们在客户类中使用new关键字来定义一个类的对象的时候,这个语句调用的是类的一个构造方法。构造方法的作用主要是初始化我们类的属性,即为类的属性赋值。类的构造方法声明语句如下:

public class ClassName{
...
  public ClassName()
  {
    field = value;
  }
}

由此可见,类的构造方法有2个特点:

  • 构造方法的方法名字和类的名字相同
  • 构造方法不写返回类型,因为构造方法返回自己类的一个实例,所以它的返回类型就是自己的类,故不写。(PS: 如果错误地写上了返回类型,那么这个方法就不再是构造方法了。)

构造方法的重载

首先,我们在编写对象类的时候,如果没有定义任何构造方法,那么系统就默认给我们定义了一个没有任何参数的构造方法。 即,如果我们定义一个对象类:

public class Person{
  String name;
  int age;
}

那么,我们可以在客户类中使用new关键字来定义一个Person类的对象实例,这个Person对象中的所有属性使用本数据类型的默认值(Zero值):

Person perA = new Person();

其次,一旦我们在对象类中声明了构造方法,无论我们声明的构造方法是有参数的还是没有参数的,那么在客户类中,我们只能使用自己声明的构造方法来定义类对象。
第三,构造方法可以重载,在对象类中,我们可以声明多个构造方法,这些构造方法的参数个数一定不同。构造方法的重载,示例代码如下:

public class Person{
    String name;
    int age;

    public Person(String name, int age)
    {
        this.name = name;
        this.age  = age;
    }

    public Person(String name)
    {
        this.name = name;
        this.age =0;
    }
    
    public Person()
    {
        this.name="";
        this.age=0;                
    }
}

构造方法中的This关键字

在一个构造方法中是不能使用构造方法的名字来调用另外一个构造方法的,这个时候我们就要使用Java代码中的This关键字。在构造方法的重载中的代码,我们也可以通过使用This关键字来简化构造方法的重载,简化后的示例代码如下:

public class Person{
    String name;
    int age;

    public Person(String name, int age)
    {
        this.name = name;
        this.age  = age;
    }

    public Person(String name)
    {
        this(name,0);
    }

    public Person()
    {
        this("");
    }
}

相关文章

  • 十二:类的构造方法

    我们在客户类中使用new关键字来定义一个类的对象的时候,这个语句调用的是类的一个构造方法。构造方法的作用主要是初始...

  • 面向对象编程

    构造方法和析构方法 构造方法 类的构造方法 Woman类后面的“()”;其实指的就是构造方法。 只要你想要创建类或...

  • Swift面向对象

    创建一个类 类的四种属性 类的构造 swift类构造过程 指定构造器 便利构造器 KVC构造器 实例方法和类方法 ...

  • 技术问 - 类及其内容

    类: 类的内容: 构造方法 构造方法是给对象的数据进行初始化的,若你不提供构造方法,系统会给类默认的构造方法(无参...

  • Swift子类重写父类构造函数

    swift中子类重写父类构造方法: 如果父类没有指定构造方法(带参数的构造方法), 子类重写父类构造方法就不需要调...

  • 5,super

    实例化一个类,会自动调用这个类的父类的构造方法 super调用父类的构造方法通常是有参的构造方法,参数和子类的构造...

  • Call to a member function displa

    TP自定义类文件构造方法,没有引入父类构造方法。

  • scala:构造方法与apply

    scala中分主构造方法、辅助构造方法,辅助构造方法必须调用主构造方法 构造方法参数作用域 如果父类有主构造方法,...

  • 构造方法

    构造方法A.指定构造方法;B.便利构造方法; 关系:A.子类的指定构造方法必须调用父类的构造方法;B.便利构造方法...

  • Java Thread初始化

    构造方法 thread的构造方法分成了两类,1类是我们平时使用的公开构造方法: 另外还有一个构造方法,是安卓添加的...

网友评论

    本文标题:十二:类的构造方法

    本文链接:https://www.haomeiwen.com/subject/nppfcqtx.html