• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

dengovo

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

继承

继承

Person类

package com.oop.demo05;

//在Java中,所有的类。都默认直接或间接继承Object
//Person :父类
public class Person /*extends Object*/{

    protected String name = "dengsy";

    //public Person(String name) {  有参构造函数 super("name")
    public Person() {
        System.out.println("Person无参执行了");
    }

    //private void print()  私有的东西无法被继承!
    public void print(){
        System.out.println("Person");
    }

}

Student类

package com.oop.demo05;

import java.awt.print.PrinterGraphics;

//Student is Person 派生类,子类
//子类继承了父类,就会拥有父类的全部方法!
public class Student extends Person {
    private String name = "dsy";

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

    public void print() {
        System.out.println("Student");
    }

    public void test(String name) {
        System.out.println(name);//邓
        System.out.println(this.name);//dsy
        System.out.println(super.name);//dengsy
    }

    public void test1() {
        print();//Student
        this.print();//Student
        super.print();//Person
    }
}

Application_5类

package com.oop.demo05;

public class Application_5 {
    public static void main(String[] args) {

        Student student = new Student();
        student.test("邓");
        System.out.println("===");
        student.test1();
    }
}

总结

  • super注意点

    1. super调用父类的构造方法,必须在构造方法的第一个
    2. super必须只能出现在子类的方法或者构造方法中
    3. super和this不能同时调用构造
  • this

    • 代表的对象不同:

      this:本身调用者这个对象

      super:代表父类对象的应用

    • 前提

      this:没有继承也可以使用

      super:只有在继承条件下才可以使用

    • 构造方法

      this(); 本类的构造

      super(); 父类的构造

posted on 2022-07-22 19:02  邓了个邓  阅读(38)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3