创建与初始化对象

使用new关键字创建对象

使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象 进行默认的初始化以及对类中构造器的调用。

 

 

构造器

类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下俩个特点:

  1. 必须和类的名字相同

  2. 必须没有返回类型,也不能写void

构造器的作用:

  1. 使用new创建对象的时候必须使用类的构造器

   2. 构造器中的代码执行后,可以给对象中的属性初始化赋值

【演示】

1 public class Student{
2     private String name;
3     public Student(){
4         name = "tom";
5     }
6 }

构造器重载:除了无参构造器之外,很多时候我们还会使用有参构造器,在创建对象时候可以给属性赋值.

【例子】

1 public class Student{
2     private String name;
3     public Student(){
4         name = "tom";
5     }
6     public Student(String name){
7         this.name = name;
8     }
9 }

构造器之间的调用

使用this关键字,在一个构造器中可以调用另一个构造器的代码。

注意:this的这种用法不会产生新的对象,只是调用了构造器中的代码而已.一般情况下只有使用new关键 字才会创建新对象。

【演示】

public class Student{
    private String name;
    public Student(){
        this();
    }
    public Student(String name){
        this.name = name;
    }
}

默认构造器:在java中,即使我们在编写类的时候没有写构造器,那么在编译之后也会自动的添加一个无参构造器,这个 无参构造器也被称为默认的构造器。

【示例】

public class Student{
}

main:
//编译通过,因为有无参构造器
Student s = new Student();

但是,如果我们手动的编写了一个构造器,那么编译后就不会添加任何构造器了

【示例】

public class Student{
    private String name;
    public Student(String name){
        this.name = name;
    }
}

main:
//编译报错,因为没有无参构造器
Student s = new Student();

 

posted @ 2021-03-01 21:12  |好的|  阅读(141)  评论(0编辑  收藏  举报