JAVA构造函数之this.super

一、基础概念

  1.什么时候定义构造函数:

    当对象创建时,需要对象必须具备的内容,通过构造函数完成。

  2.一般函数和构造函数的区别:

    定义上:构造函数只为对象的初始化,只执行一次。一般函数定义对象应该具备的功能。可以被调用多次。

    运行上:构造函数在对象一创建,就会执行。一般函数是只有被对象调用才执行。

  3.构造函数的格式要求:

     (1). 函数名和类名相同。

     (2). 没有返回值类型。

             (3). 没有具体的返回值。

  4.构造函数的作用:就是对对象进行初始化。

  5.揭秘:

    (1). class定义的类中,如果没有声明任何构造函数,类中会默认有一个空参数的构造函数。

    (2). 如果在class类中自定义了构造函数,默认的构造函数就没有了。构造函数在类中有多个的情况下,是以重载的形式存在的。

  6.注意:

    (1). 构造函数中也可以有return语句,用于结束初始化动作。

    (2). 构造函数的前面加了void,编译可以通过,但是不再是构造函数,而是一般函数。(建议不要这样写)

/**
     * 属性
     * 昵称、        职业、        等级、    称号
     * name     occupation        grade    title
     */
   //构造函数
    
    public  Role(String name,String occupation,int grade,String title){
        this.name=name;
        this.occupation=occupation;
        this.grade=grade;
        this.title=title;
    }
    //toString是用于输出
    /**
     * 属性
     * 昵称、        职业、        等级、    称号
     * name     occupation        grade    title
     */
    public String toString(){
        return "昵称"+"\t"+"职业"+"\t"+"等级"+"\t"+"称号"+"\n"+name+"\t"+occupation+"\t"+grade+"\t"+title+"\n";
    }
    //Test测试

Role r=new Role("字符串","字符串",整数,"字符串");

System.out.println(r);

this:当前对象
        this.属性;当前对象的属性
        this([参数]);当前对象构造函数
        必须写在构造函数内的首行
        this.函数名([参数]);当前对象的函数
    super:
        super.属性;父类的属性
        super([参数]);父类的构造函数
        每一个构造函数内都默认有一个无参的super();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值