对象的初始化

对象的初始化常用到构造器(construct)来创建对象。

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

public static void main(String [] args){
              Person p = new Person ("Tom",15) ;
}

 

构造函数的重载:重名但参数不同。

public class Person(){
        private String name;
        private int age;

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

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

一个构造函数调用另一个构造函数。

public Person(){
    this(" ",15);    //需要用到this关键字且放在第一行
}

若类没有构造器则会默认无参构造器。

 

 初始化块

  • 类内段单独用{}括起来的代码段
  • 创建对象的时候执行
  • 按照先后顺序执行
  • 先执行初始化块再构造函数
public class Person  {
    private int age;
    private String name;

    {
        System.out.println("初始化块1");
    }
    public Person() {
        System.out.println("无参构造函数");
    }

    {
        System.out.println("初始化块2");
    }
    

    public static void main(String[] args) {
        Person p = new Person();
    }
    
}

运行结果:

 对象的销毁

 

个人总结与体会:

  1. 明确对象的创建与初始化:在Java中,对象的创建与初始化是分开的。首先,通过new关键字创建一个新的对象实例。然后,通过调用构造函数或初始化方法来初始化对象的状态。
  2. 构造函数的作用:构造函数是一个特殊的方法,用于在对象创建时初始化对象的状态。它是在创建对象时自动调用的。构造函数与类同名,没有返回类型。
  3. 初始化的步骤:Java对象的初始化步骤通常包括:分配内存给对象的属性,然后使用构造函数或初始化方法来设置这些属性的初始值。
  4. 初始化的注意事项:在初始化Java对象时,需要注意以下几点:首先,要确保所有的属性都被正确地初始化;其次,如果对象依赖于其他资源(如文件、网络连接等),需要在初始化时进行资源分配;最后,如果对象在创建时需要接受参数,那么这些参数需要在构造函数中进行验证,以确保对象能够正确地被创建和使用。
  5. 初始化块:在Java中,可以使用初始化块(instance initializer block)或静态初始化块(static initializer block)来初始化对象或类的状态。这些块会在构造函数或初始化方法之前执行。
  6. 个人体会:Java对象的初始化是一个关键的编程概念,有助于我们更好地理解如何创建和管理对象。通过掌握对象的初始化过程,我们可以更好地理解Java的内存管理和垃圾回收机制。同时,正确的对象初始化也可以帮助我们避免许多常见的错误,如内存泄漏、空指针异常等。
posted @ 2023-12-09 22:55  one_1  阅读(33)  评论(0编辑  收藏  举报