【学习笔记】构造方法和this关键字

一、构造方法:
1、作用:完成对象成员的初始化工作.
2、特点:

(1)必须与类同名,不能带返回值,且不能加void,可以带一个或多个参数,也可以不带参数;
(2)在类中没有手动定义构造方法,系统会自动提供无参的构造方法;如果手动定义了构造方法,系统不再提供构造方法;
(3)在类中可以定义多个构造方法,多个构造方法之间必须完成方法重载.

(4)方法不能是静态方法;
3、 构造方法和普通方法的区别
(1)构造方法的名称总是和它的类名一致;普通方法可以是类名,也可以不是,不推荐普通方法使用类名;

(2)构造方法没有返回值,即不可以为它指定任何类型的返回值,包括void;普通方法可以带有返回值;

(3)构造方法不能直接通过对象打点来调用,它是完成对象初始化工作;普通方法需通过对象打点来调用;

(4)构造方法不能是静态方法;普通方法包括静态方法和非静态方法;

4、对象的存储方式:
(1)类名  对象名=null;
是在内存的栈空间中开辟一个空间,空间名是对象名,空间中的内容是null,暂时不能通过对象名来访问,否则会报空指针异常;
(2)对象名=new 类名();
是在内存的堆空间中开辟一个空间,空间的内容是对象的属性值,栈空间的内容是堆空间的内存地址;
二、this 关键字:  当前对象
(1)调用方法:

通过 this.属性名  或  this.方法名()  调用本类的属性和方法
(2) this(参数) 可以用在构造方法,代表调用本类的其他构造方法,但当前语句必须位于构造方法的第一行.

如:

public class Test {
    public static void main(String[] args) {
        Car hq=new Car("黑色",4.6,1.8);
        System.out.println("颜色:"+hq.color);
        System.out.println("长度:"+hq.length);
        System.out.println("宽度:"+hq.width);        
    }
}

class Car{
    String color;
    double length;
    double width;
    public Car() {
        length=4.7;
    }
    public Car(String color,double length,double w) {
        this();
        this.color=color;
        width=w;
    }
}

//输出结果:

颜色:黑色
长度:4.7
宽度:1.8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值