栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

super用法总结(自用)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

super用法总结(自用)

父类
package com.lr.day12.Extends;
public class Monkey {
    //name属性
    private String name;
    //speak方法
    public void speak(){
        System.out.println("咿咿呀呀");
    }
    //eat方法
    public void eat(){
        System.out.println("小猴子喜欢吃桃子");
    }
    //无参构造方法
     public Monkey() {
     }
     //有参构造方法
     public Monkey(String name) {
         this.name = name;
     }
     //set、get方法
     public String getName() {
         return name;
     }
     public void setName(String name) {
         this.name = name;
     }
     //tostring方法
     @Override
     public String toString() {
         return "Monkey{" +
                 "name='" + name + ''' +
                 '}';
     }
 }

子类
 package com.lr.day12.Extends;
public class People extends Monkey{
    //重写speak方法
    public void speak(){
        System.out.println("小样的,不错嘛!会说话了!");
    }
    //特有的think方法
    public void think(){
        System.out.println("别说话!认真思考!");
    }
    //在构造方法中测试super、this
    public  People(String name){
        speak();//子类的 小样的,不错嘛!会说话了!
        this.speak();//子类的 小样的,不错嘛!会说话了!
        super.speak();//父类的 咿咿呀呀
        eat();//父类的 小猴子喜欢吃桃子
        super.eat();//父类的 小猴子喜欢吃桃子
        ********
        //super(name);
    }
    //在实例方法中测试super、this,结果相同
    public void extendsTest(){
        speak();
        this.speak();
        super.speak();
        eat();
        super.eat();
    }
}`

##测试类

package com.lr.day12.Extends;

public class E {
    public static void main(String[] args) {
        People p=new People("xiaohouzi");
        System.out.println("______________");
        p.extendsTest();
        p.think();
    }
}
输出结果

小样的,不错嘛!会说话了!
小样的,不错嘛!会说话了!
咿咿呀呀
小猴子喜欢吃桃子
小猴子喜欢吃桃子


小样的,不错嘛!会说话了!
小样的,不错嘛!会说话了!
咿咿呀呀
小猴子喜欢吃桃子
小猴子喜欢吃桃子
别说话!认真思考!

总结

在构造/实例方法中调用实例方法
1。子类没有,父类有。默认调父类的方法,super可省略
子类有,父类有。调父类的方法,super不可省略
子类有,父类有。调子类的方法,this.()或this可省略
2。super(实际参数列表)只允许出现在构造方法第一行,表示子类构造方法执行过程中调用父类的构造方法。
3。super可以用在实例方法中,也可以用在构造方法中,不能用在静态方法中
/
****

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/281987.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号