JDK动态代理 ASP.NET wxRuby Jetbains全家桶 mobile matlab向上取整 flexbox laravel4 electron seo vue绑定事件 js键值对数组 移动端上传图片插件 windows查看进程命令 idea全局替换 python的extend python文件操作 python调用函数 java简介 javastring类型 java遍历集合 怎么看java版本 java接口类型 java接口的使用 java接口的修饰符 java接口的实例 swing布局 网站数据分析工具 vbs表白代码 复制到剪贴板 mpg格式转换 vscode全局搜索 js代码混淆工具 正当防卫4存档 ps怎么画漫画 海蜘蛛软路由 免费ftp空间 思源黑体 速查表 追评可以删除吗
当前位置: 首页 > 学习教程  > 编程语言

super详解

2021/2/13 20:11:20 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

super super调用父类方法super调用父类属性super();隐藏代码:调用了父类的无参构造调用父类的构造方法,必须要在子类构造方法的第一行super必须只能出现在子类的方法或构造方法中!super和this不能同时使用构造方法! vs this 代…

super

  1. super调用父类方法
  2. super调用父类属性
  3. super();隐藏代码:调用了父类的无参构造
  4. 调用父类的构造方法,必须要在子类构造方法的第一行
  5. super必须只能出现在子类的方法或构造方法中!
  6. super和this不能同时使用构造方法!

vs this

代表的对象不同:
this:本身调用者这个对象
super:代表父类对象的应用
前提:
this:没有继承也可以使用
super:只能在继承的条件才可以使用
构造方法:
this();本类构造
super();父类构造

public class Student extends Person {

    public Student() {

        //隐藏代码:调用了父类的无参构造
        super();//调用父类的构造器,必须要在子类构造器的第一行
        System.out.println("子类无参执行了");
    }

    private String name="张三";

    public void print(){
        System.out.println("Student");
    }
    //super调用父类方法
    public void test1(){
        print();//student
        this.print();//student
        super.print();//Person
    }
    //super调用父类属性
    public void test(String name){
        System.out.println(name);//李四
        System.out.println(this.name);//张三
        System.out.println(super.name);//zhangsan
    }

}

本文链接: http://www.dtmao.cc/news_show_700409.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?