Java面向对象:构造器、this

目录

  • 构造器
    • 学构造器的目的
    • 构造器的作用
    • 样例
    • 构造器的注意事项
    • 总结
  • this关键字
    • this关键字是什么
    • 样例
    • this关键字的作用
    • 总结

构造器

学构造器的目的

  • 真正知道对象具体是通过调用什么代码得到的。
  • 能够掌握为对象赋值的其他简便写法。
  • 为以后学习面向对象编程的其他内容做支撑。

构造器的作用

Java面向对象:构造器、this_第1张图片

样例

package com.itheima.constructor;

public class Car {
    String name;
    double price;

    public Car(){
        System.out.println("无参数构造器被调用了");
    }

    public Car(String n,double p){
        System.out.println("有参数构造器被调用了");
        name = n;
        price = p;
    }

}

package com.itheima.constructor;

public class Test {
    public static void main(String[] args) {
        Car c = new Car();
        System.out.println(c.name);
        System.out.println(c.price);

        Car c2 = new Car("奔驰",39);
        System.out.println(c2.name);
        System.out.println(c2.price);
    }
}

Java面向对象:构造器、this_第2张图片

构造器的注意事项

Java面向对象:构造器、this_第3张图片

总结

1.构造器的作用?
初始化类的对象,并返回对象的地址。

2.构造器有几种,各自的作用是什么?

  • 无参数构造器:初始化对象时,成员变量的数据均采用默认值。
  • 有参数构造器:在初始化对象的时候,同时可以接收参数为对象进行赋值。

3.构造器有哪些注意事项?

  • 任何类定义出来,默认就自带了无参数构造器,写不写都有。
  • 一旦定义了有参数构造器,无参数构造器就没有了,此时就需要自己写无参数构造器了。

this关键字

this关键字是什么

Java面向对象:构造器、this_第4张图片

样例

package com.itheima.thisdemo;

public class Car {
    public Car(){
        System.out.println("无参构造器中的this:"+this);
    }
    public void run(){
        System.out.println("方法中的this:"+this);
    }
}

package com.itheima.thisdemo;

public class Test {
    public static void main(String[] args) {
        Car c =new Car();
        c.run();
        System.out.println(c);
    }
}

Java面向对象:构造器、this_第5张图片

this关键字的作用

Java面向对象:构造器、this_第6张图片

package com.itheima.thisdemo;

public class Car {

    String name;
    double price;
    public Car(){
        System.out.println("无参构造器中的this:"+this);
    }

    public Car(String name , double price){
        this.name= name;
        this.price = price;
    }

    public void goWith(String name){
        System.out.println(this.name +"正在和"+name + "一起比赛");
    }
    public void run(){
        System.out.println("方法中的this:"+this);
    }
}

package com.itheima.thisdemo;

public class Test {
    public static void main(String[] args) {
        Car c =new Car();
        c.run();
        System.out.println(c);

        Car c2 =new Car("奔驰",39.9);
        System.out.println(c2.name);
        System.out.println(c2.price);

        c2.goWith("宝马");
    }
}

总结

  1. this关键字是什么?
    出现在构造器和成员方法中,代表当前对象的地址。
  2. this关键字在构造器中、成员方法中可以做什么?
    可以用于指定访问当前对象的成员。

你可能感兴趣的:(Java基础,java,jvm,开发语言)