继承(概念、重写父类方法、super关键字)| final关键字

来源:互联网 发布:mac air 能玩什么游戏 编辑:程序博客网 时间:2024/09/21 06:37

一、类的继承
继承的概念:
在现有类的基础上去构建新的类,新的类叫做子类,现有类叫做父类。需要注意,子类会自动拥有父类所有可以继承的方法和属性。
如何定义继承的类:
一个类继承一个类需要使用extends关键字
例子(来自传智播客图书)

class Animal{    String name;    void shout (){        System.out.print("这是一只会叫的动物");    }}class Dog extends Aniaml{    public void printName(){        System.out.print("这只动物的名字是"+name);    }}public class Test{    public static void main (String [] args){        Dog dog=new Dog();        dog.name="牧羊犬";//为dog的name属性赋值        dog.printName();//调用dog的printName方法        dog.shout;//调用dog继承来的shout方法    }}

java只允许单继承,即一个类只能继承一个类。
java允许多个类继承一个类
java也允许多重继承,即a继承b,b继承c

重写父类方法:
重写父类方法就是在子类中把父类的方法进行一些修改
重写的方法需要和父类方法具有相同的方法名,参数列表,返回值类型
子类重写父类的方法时,不能使用比父类方法更严格的修饰符

super关键字
当我们把父类方法重写后,再实例化子类对象会发现该对象无法调用没被重写的父类方法。使用super关键字就可以解决这种问题
①:使用super关键字调用父类的成员变量和成员方法
使用格式是直接用super关键字调用需要调用方法 super.需要调用的成员方法/变量
②:使用super还可以调用父类的构造方法(在子类构造方法中)
需要注意:使用super调用父类构造方法的代码必须位于子类构造方法第一行。
前面讲this关键字的时候说过构造方法不能像其他方法那样随便调用,在构造方法中使用this调用其他构造方法的语句必须位于第一行且只能出现一次。(构造方法的调用必须是同一个类中的构造方法)

二、final关键字
final可以修饰类、方法、变量
final修饰的类不能被继承,修饰的方法不能被子类重写,修饰的变量成为常量,只能赋值一次。
修饰类

final class Animal{}

修饰方法

public final void shout(){}

修饰变量

final int num=2;
阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 车子年检远光灯不过怎么办 重庆etc坏了怎么办 重庆怎么办etc高速卡 手机相册占内存怎么办 华为nova3声音小怎么办 深圳怎么办停车月卡 辐射避难所死爪来了怎么办 大都会出站没刷怎么办 metro大都会进站没刷到怎么办 大连玉石被骗了怎么办 大连君悦会员怎么办 学生卡丢了怎么办 买保险想退保怎么办 交房通知单丢失怎么办 全款买期房烂尾怎么办 期房如果烂尾怎么办 开发商推迟交房怎么办 永外还有平房怎么办 房子办不了贷款怎么办 公司网限速了怎么办 浩华北郡以后怎么办 被网上酒托骗了怎么办 股票破产了钱怎么办 被新湖期货骗了怎么办 山姆会员超市会员卡怎么办 贸易公司没有进项发票怎么办 邮政快递少件怎么办 圆通快递少件怎么办 洗衣服时染上颜色怎么办 洗衣服染上别的颜色怎么办 洗衣服染上其他颜色怎么办 做棉花糖粘锅了怎么办 同事借钱不想借怎么办 同事向你借钱怎么办 老板跑路员工工资怎么办 人丹吃了一包怎么办 体重秤出现负数怎么办 室内做立面不会材料怎么办 恶性软巢囊肿怎么办 小东西弄没了怎么办 d一二聚体偏高怎么办