继承(概念、重写父类方法、super关键字)| final关键字
来源:互联网 发布:mac air 能玩什么游戏 编辑:程序博客网 时间:2024/06/08 01:36
一、类的继承
继承的概念:
在现有类的基础上去构建新的类,新的类叫做子类,现有类叫做父类。需要注意,子类会自动拥有父类所有可以继承的方法和属性。
如何定义继承的类:
一个类继承一个类需要使用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
- 继承(概念、重写父类方法、super关键字)| final关键字
- 继承;成员变量隐藏与重写;关键字super;final类和final方法
- JAVA第七节-继承,继承中方法重写,继承的初始化顺序,final关键字,super关键字,object类
- java中的继承,继承中方法的重写,继承的初始化顺序,final关键字,super关键字
- Day08 --代码块 继承 重写 this和super final关键字
- 第十三讲 继承、方法重写与super、final关键字、抽象类与接口、Object类、工厂和静态代理模式
- 继承中的final/super关键字、Object类
- Java学习笔记之继承和接口(一) super关键字、final关键字、abstract类和方法
- java方法的重载,重写,super,this,final关键字
- java方法的重载,重写,super,this,final关键字
- java方法的重载,重写,super,this,final关键字
- 08-java代码块,继承,方法重写,final关键字
- JAVA_继承演示03_ExtendsDeamo01.java super关键字 重写父类的方法,中,调用父类的方法
- JAVA基础再回首(六)——父与子的继承、super关键字、方法重写、方法重载
- super关键字和final关键字
- 8 面向对象(制作帮助文档,通过JDK提供的API学习了Math类,代码块,继承(继承子父成员访问特点,super关键字,方法重写))
- Java'笔记(六) 方法重写和super关键字
- java方法重写和super关键字
- LeetCode 371. Sum of Two Integers
- 小C的倍数问题
- 面试百战百答-无线通信专业002-OFDMA
- PHP基础教程-19 If条件判断语句
- 问题 A: 集合运算
- 继承(概念、重写父类方法、super关键字)| final关键字
- HDU 6113 度度熊的01世界【搜索】
- 【openjudge】魔兽世界(终极版)
- 有关树的知识点(1)
- 日常使用的JS操作
- linux中的内核级防火墙(SElinux)
- 在mac中使用Docker搭建oracle
- opencv直方图显示
- Linux-USB驱动(5)-USB驱动程序设计