【Java基础】super关键字的使用

目录

super关键字简介

super可以指向父类的实例变量

super可以调用父类方法

super可以调用父类构造方法


super关键字简介

super关键字表示超类,用来指向父类对象。super关键字有以下三种用法

  1. super可以指向父类的实例变量
  2. super可以调用父类方法
  3. super可以调用父类构造函数

super可以指向父类的实例变量

public class superinstacne {
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.printColor();
    }
}

class Animal{
    String color = "white";
}

class Dog extends Animal{
    String color = "blcak";
    void printColor() {
        System.out.println(color);   //打印的是子类Dog类的变量
        System.out.println(super.color); //打印的是父类Animal类的变量
    }
}

super可以调用父类方法

public class supermethod {
    public static void main(String[] args) {
        Dog1 dog1 = new Dog1();
        dog1.eat();
        dog1.annimaleat();
    }
}

class Animal1{
    void eat() {
        System.out.println("Animal eat...");
    }
}

class Dog1 extends Animal1 {
    //子类重写继承的eat方法
    void eat() {
        System.out.println("Dog eat...");
    }

    void annimaleat() {
        //调用父类的eat方法
        super.eat();
    }
}

super可以调用父类构造方法

public class superlearn {
    public static void main(String[] args) {
        Emp emp = new Emp(1, "yasuo");
        emp.display();
    }
}

class Person{
    String name;
    int id;
    Person(int id, String name) {
        this.id = id;
        this.name = name;
    }
}

class Emp extends Person{
    Emp(int id, String name){
        super(id, name); //通过super调用父类的构造方法,同时必须放在第一行
    }

    void display() {
        System.out.println(id);
        System.out.println(name);
    }
}

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值