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

类的继承——基于java

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

类的继承——基于java

类的继承就是一种类于类之间的包含关系,比如说,你现在有两个类,一个学生类和大学生类,大学生也是学生,它是属于学生里面的,学生包含着大学生。所以咋们把学生类,这种范围大的定义为父类。大学生类这种范围小的,定义为子类。

继承的格式是 public class 子类(派生类) extends 父类(基类,超类) {}

那我们为什么要用类的继承呢?

子类他可以继承父类的方法和属性,这样就可以大大的节约代码量,减少一点重复功能。但是私有属性不能够直接使用。

现在咋们有个学生类

public class Student {

         private String name;

         //定义set方法,初始化属性

       public void setName(String n){

                 name = n;

}

          //定义get方法,获取属性

       public void getName(){

        return name;

        //定义学生的学习方法

        public void Study(){

      System.out.println(name+"正在学习!");

}

}

现在咋们写一个大学生类继承他

public class UNstudent extends Student(){

  public void printName(){

System.out.println("名字"+name);

}

}

Java中的每个类都会自动继承Object类

在这咋们来讲一下方法重写这个概念

方法重写只能在有继承关系的两个类之间进行,

那为什么要方法重新

打个比方,大学生和学生都要学习,在具体到大学生学的内容肯定比学生的学习要具体的多,这时候就要重写一下方法 ,去覆盖掉父类学习的方法

方法重写的格式:访问修饰符大于等于父类,返回值类型,方法名,参数类型(个数,顺序)完全一样

访问修饰符大于等于父类是什么意思呢?

访问修饰符有四种,public protected private 和 缺失

假设你的父类的该方法的访问符是缺失 你在子类方法重写时,你就可以写 public 很明显public大于缺失。

假设你在你的父类中写了一个学习方法,现在你又在子类中重写了一下学习方法,当代码运行起来的时候,他会先跑父类的这里面的代码,但不会马上运行起来,他会接着跑一下子类的代码,当他发现你的子类中重写的该许学习方法,他就会首先调用子类的方法,而不是父类的该方法。

关于那些没有重写的方法,运行时他就直接调用父类的方法。

总结起来,重写后,调用时,即调用子类的中的方法。未重写,则调用父类中的方法。

接下来咋们说一下转型的问题

首先咋们说一下为什么要转型。

咋们假设两种情况。

第一种是在父类中有某一方法,但是呢,在你的子类中没有该方法,你又想用这个方法,这时候怎么办呢。你就可以使用自动转型(即向上转型),将你的子类的对象自动转型为父类对象,调用父类的中的该方法。

自动转型的格式: 父类 对象变量名 = new 子类();

假设你这个方法又在子类中重写了,你就自动转型了,这时候,运行的是父类中的该方法还是子类中的重写的那个方法呢

自动转型后该对象只能调用子类中重写的方法。

第二种情况是在子类中有某一方法,但是在你的父类中没有该方法,你又想用这个方法,这时候需要强制转型(向下转型),将你的父类对象转型为子类对象,调用子类的该方法。

强制转型的格式:子类 对象变量名 = (父类)父类对象名;

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

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

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