前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java的学习笔记(10)对象 五

Java的学习笔记(10)对象 五

作者头像
卢衍飞
发布2023-02-13 21:28:24
1300
发布2023-02-13 21:28:24
举报
文章被收录于专栏:技术分享交流

对象09:什么是继承 extands 修饰关键字,扩展,继承

继承是类和类之间的关系。子类和父类之间在意义上应该具有“子类 is a 父类”

Java中只有单继承,没有多继承。“一个爸爸有多个儿子,一个儿子只有爸爸”: Object——>Persion

​ |——>Studnt

​ |——>Teacher

package oop.demo05;

public class Application {

代码语言:javascript
复制
public static void main(String[] args) {
    Student student = new Student();
    student.say();

}

} package oop.demo05;

//Persion是父类,Student和Teacher是派生类 // 子类继承了父类,就拥有了父类的全部方法 //public 公共 //protected 受保护的 //default 常规,默认 //private 私有,子类不能继承

//在java中所有的类 都默认继承Object类 // CTRL+ H 快捷键 查看层次结构

public class Persion {

代码语言:javascript
复制
public void say(){
    System.out.println("说了一句话");
}

} package oop.demo05;

public class Student extends Persion{ //extends 继承了Persion的公共属性和公共方法 Student是Persio

} package oop.demo05;

public class Teacher extends Persion{ //extends 继承了Persion Teacher是Persion

} 对象10:Super详解(继承) super 注意点

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

代表的对象不同:

​ this :本身吊桶的是当前类的对象

​ super:是指父亲类的对象的应用

前提:

​ this:没有继承也可以用

​ super;只能在继承条件才可以使用

构造方法

​ this(); 调用本类的构造

​ super();调用父类的构造

package oop.demo05;

public class Application {

代码语言:javascript
复制
public static void main(String[] args) {
    Student student = new Student();
    student.say();
    student.test("李白");
    student.test1();
}

} package oop.demo05;

//Persion是父类,Student和Teacher是派生类 // 子类继承了父类,就拥有了父类的全部方法 //public 公共 //protected 受保护的 //default 常规,默认 //private 私有,子类不能继承

//在java中所有的类 都默认继承Object类 // CTRL+ H 快捷键 查看层次结构

public class Person {

代码语言:javascript
复制
public void say(){

    System.out.println("说了一句话");
}

public void Person() {
    System.out.println("Person无参执行");
}

protected String name = "zhangsan";

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

} package oop.demo05;

public class Student extends Person{ //extends 继承了Persion的属性 Student是Persio

代码语言:javascript
复制
private String name = "libai";
public void print(){

    //执行顺序,先父后子
    //隐藏代码,调用了父类的无参构造
    //父类无参,子类的也无参
    System.out.println("Student");
}

public Student() {
    System.out.println("Student无参执行");
}

public void test(String name){
    System.out.println(name);   //李白
    System.out.println(this.name);   //libai
    System.out.println(super.name);  //zhangsan
}

public void test1(){
    System.out.println("=================");
    print();         //student
    this.print();    //student
    super.print();     //Persion        super读取了父类的print方法。如果print方法被声名为private将不回被读出
}

}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023 年 01 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档