day05 aprendizaje del primer día orientado a objetos (resumen)

2 、 básico

3. Este puntero

4 、 construcción

El papel del método de construcción.

El método de construcción es el último paso para crear un objeto,Es ayudarnos a asignar valores a las variables miembro.. Este método no lo llamamos nosotros mismos, sinoEs llamado automáticamente por jvm. [Es bueno que el núcleo entienda esto]

public class Demo {
    
    
    public static void main(String[] args) {
    
    
        
        Teacher t4 = new Teacher("语文", 30);//我想创建对象的过程中,我就直接赋值
        t4.print();//成员方法print
        /*System.out.println(t4.age);
        System.out.println(t4.course);*/

        /*//这么多构造方法,怎么知道调用哪一个?
        Teacher t3 = new Teacher(16);
        System.out.println(t3.age);         //16
        System.out.println(t3.course);      //null
        */
    }
}
class Teacher {
    
    
    //定义成员变量
    String course;//课程
    int age;

    //定义Teacher的构造方法
    public Teacher(){
    
    

    }
                   //定义有参的构造方法
    public Teacher(String course, int age) {
    
    
        //赋值,把方法传入的局部变量 赋值给当前对象的成员变量
        //this.course代表当前对象的course成员变量
        //后面的course是方法传入的参数 局部变量
       /* this.course = course;
        this.age = age;*/

       //使用this关键字调用后面两个单参数的构造方法
        //Call to 'this()' must be first statement in constructor body
        this(course);
        this.age = age;
        //this(age);   //error
    }
                   //定义一个单参数的构造方法
    public Teacher(String course){
    
    
        //赋值,把方法传入的局部变量 赋值给当前对象的成员变量
        this.course = course;
    }
                   //定义一个单参数的构造方法
    public Teacher(int age){
    
    
        //赋值,把方法传入的局部变量 赋值给当前对象的成员变量
        this.age = age;
    }
    
   //定义一个成员方法
   public void print(){
    
    
       System.out.println(this.course);
       System.out.println(this.age);
   }
}

Algunos detalles importantes del método de construcción (constructor)

  1. Cuando no hay una definición explícita del constructor en una clase, esta vezJVM proporcionará un método de construcción sin argumentos de forma predeterminada
  2. Cuando en una claseDefina explícitamente el método de construcción de parámetros, entonces no se proporcionará el método de construcción sin parámetros predeterminado Generate后直接选择生成多个构造方法 (mac系统没找见INSERT键)

Después de definir una estructura parametrizada, desarrolle un buen hábito, debe agregar una estructura sin parámetros a esta clase
. En los
marcos posteriores, algunos marcos llamarán automáticamente la estructura sin parámetros para crear objetos

  1. El método de construcción también es un método, ya que es un método,Puede sobrecargar el método
  2. También en el constructorPuedes usar esta palabra clave

1, puede llamar a otro constructor en la clase actual de 语法是this(参数列表)
atención especial: el uso de esta llamada a otros constructores, esta debe ser la primera línea del constructor, así que solo use una de este
2, puede usar esta palabra clave para llamar a la actual objeto Variables de miembro y métodos de miembro
.
Nota: En el mejor de los casos, deje que el constructor se concentre en crear objetos y no se preocupe por otras cosas

  1. Método de construcciónNo es un método ordinario, y mucho menos un método miembro., Este método no se llama para programadores, peroLlamado a jvmHay un reflejo en la parte posterior, lo que equivale a un uso indirecto.

Supongo que te gusta

Origin blog.csdn.net/AC_872767407/article/details/113406689
Recomendado
Clasificación