Java的Overriding重写-笔记
Java - Overriding重写
本文参考这里
区别:
- overload:重载,名相同/参数不同(类型/数目),即函数签名不相同。重载发生在同一个类内的两个或多个方法间,平行的关系。
- override:重写、也译覆盖,函数签名相同。重写发生在父与子类之间,层次的关系。
子类从父类中继承到一个非final
方法,则可以在子类中对该方法进行重写(overriding)。
例子1:
class Animal
{public void move(){System.out.println("Animals-move");}
}class Dog extends Animal
{public void move() // 重写overriding{System.out.println("Dogs-move");}
}Animal a = new Animal(); // Animal reference and object
Animal b = new Dog(); // Animal reference but Dog object
a.move(); // runs the method in Animal class
b.move(); // Runs the method in Dog class// 运行结果:
Animals-move
Dogs-move
例子2:
// MainTest.javaclass Animal
{void say(){System.out.println("animal say");}
}class Dog extends Animal
{@Overridevoid say(){System.out.println("dog say");}
}class Cat extends Animal
{@Overridevoid say(){System.out.println("cat say");}// for overload testvoid move(){System.out.println("cat move");}void move(int i){System.out.println("cat another move");}
}public class MainTest
{public static void main(String[] args){Animal a = new Animal();Animal b = new Dog();Cat c = new Cat();// overriding, 多态a.say();b.say();c.say();// overloadc.move();c.move(1);}
}// 运行结果:
animal say
dog say
cat say
cat move
cat another move
方法重写的规则(rules)
略
super
关键字
调用父类版本的方法 When invoking a superclass version of an overridden method the super
keyword is used.
Java的Overriding重写-笔记相关推荐
- Java学习笔记二十二:Java的方法重写
Java的方法重写 一:什么是方法的重写: 如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法. 语法规则 返回值类型.方法名.参数类型及个数都要与父类继承的 ...
- (CZ深入浅出Java基础)线程笔记
这是刘意老师的JAVA基础教程的笔记 讲的贼好,附上传送门 传智风清扬-超全面的Java基础 一.线程的引入 1.多线程概述 进程 a.正在运行的程序,是系统进行资源分类和调用的独立单位. b.每个进 ...
- Java基础之重写与重载深入解析
Java详解重写与重载 首语 总结java重写与重载的时候,在菜鸟教程看到很详细的解释,觉得很好,就搬过来了,侵删. url:https://www.runoob.com/java/java-over ...
- Java重载和重写6_深入理解Java中的重写和重载
深入理解Java中的重写和重载 重载(Overloading)和重写(Overriding)是Java中两个比较重要的概念.但是对于新手来说也比较容易混淆.本文通过两个简单的例子说明了他们之间的区别. ...
- 《疯狂Java讲义》学习笔记 第六章 面向对象(下)
<疯狂Java讲义>学习笔记 第六章 面向对象(下) 6.1包装类 基本数据类型 包装类 byte Byte short Short int Integer long Long char ...
- 慕课Java第三季学习及笔记整理
学习网址及截图和部分图片来源:https://www.imooc.com/learn/110 慕课Java第三季学习及笔记整理 一.异常与异常处理 1-1 java异常简介 概念 异常体系结构 1-2 ...
- Java基础知识之笔记总结分享
Java基础知识之笔记总结分享 给大家分享一篇我之前在学习java过程中的关于java基础部分的笔记,比较详细,内容也比较多. 如有问题请指出以便修改,谢谢. 篇幅较长建议收藏浏览. 1 环境变量配置 ...
- 【牛客网java练习错题笔记】 --Java基础打卡day002
[牛客网java练习错题笔记] --Java基础打卡day002 1 根据以下代码段,正确的是 2 在Java中,在同一包内,类Cat里面有个公共方法sleep(),该方法有static修饰,所以可以 ...
- Java基础知识之笔记总结分享(超详细)
给大家分享一篇我之前在学习java过程中的关于java基础部分的笔记,比较详细,内容也比较多. 如有问题请指出以便修改,谢谢. 篇幅较长建议收藏浏览. 1 环境变量配置 JAVA_HOME:jdk路径 ...
最新文章
- nGrinder性能测试平台搭建(LVS压力测试)
- 第六章 PX4-Sensors解析
- EditText常用属性总结
- 一起谈.NET技术,使用WCF实现SOA面向服务编程—— 架构设计
- 蓝桥杯2019年第十届C/C++省赛A组第三题-最大降雨量
- TListView列表拒绝添加重复信息
- SQL日期格式化处理
- android组件不能加适配器,Android 针对继承BaseAdapter的自定义适配器应注意的几个地方...
- 蓝屏代码大全 蓝屏全攻略
- 单招面试问为什么选择计算机这个专业,单招面试常见问题及答案 面试要注意什么...
- IDEA中解决Spring 配置文件未受管束问题,提示:Unmapped Spring configuration files found
- 算法:经典leetcode算法题解
- 计算机在职双证博士的学校,双证在职博士招生院校有哪些?
- 干货 | 全行业薪酬一览表,建议收藏!
- Autosar BSW开发必知的“术语”+“缩写”概念-1-诊断通信篇
- for循环中的break与continue
- 解决jupyter notebook无法跳转浏览器
- C语言:关键字---struct(声明结构体类型)
- 猿创征文|使用SQL创建学生信息管理数据库(完整)
- with respect to是什么意思?