12.9 Override
12.9 Override
静态方法
- 父类的引用可以指向子类静态方法(用static修饰的方法)的调用只和左边定义的数据类型有关,如:
public class Person {
public static void Saying()
{
System.out.println("person说了一句话。");
}
}
public class Student extends Person{
public static void Saying()
{
System.out.println("student说了一句话。");
}
}
main()
{
Student S = new Student();
S.Saying();
**Person p = new Student();**
p.Saying();
}
输出结果:

非静态方法
- 重写只和非静态方法有关,即只有非静态方法能够重写。
- 重写要区别于重载(函数的参数个数和参数类型不同)
- 重写的方法必须为public
- 子类和父类都有的方法,如子类重写了父类的方法,则执行子类的方法。
public class Person {
public void Saying()
{
System.out.println("person说了一句话。");
}
}
public class Student extends Person{
public void Saying()
{
System.out.println("student说了一句话。");
}
}
main()
{
Student S = new Student();
S.Saying();
**Person p = new Student();**
p.Saying();
}
输出结果:

多态
多态是方法的多态,属性没有多态
多态存在的条件:两个类之间有继承关系,方法需要重写,父类的引用指向子类对象,即
Father f1 = new Son();
父类无法调用子类独有的方法,若父类的方法被子类重写则调用子类的重写方法,代码见上:
不能重写的方法:static修饰的方法、final常量、private方法。
12.9 Override的更多相关文章
- Android开发手记(12) Menu的使用
Android中的Menu分为三种,分别为:OptionsMenu(选项菜单).ContextMenu(上下文菜单).SubMenu(子菜单). 1.OptionsMenu 按Menu键就会显示,用于 ...
- overload和override二者之间的区别
overload和override三者之间的区别 Overload是重载,是有相同的方法名,但参数类型或个数彼此不同Override是重写,是在子类与父类中,子类中的方法的方法名,参数个数.类型都与父 ...
- .NET Core采用的全新配置系统[7]: 将配置保存在数据库中
我们在<聊聊默认支持的各种配置源>和<深入了解三种针对文件(JSON.XML与INI)的配置源>对配置模型中默认提供的各种ConfigurationSource进行了深入详尽的 ...
- ASP.NET Core管道深度剖析(3):管道是如何处理HTTP请求的?
我们知道ASP.NET Core请求处理管道由一个服务器和一组有序的中间件组成,所以从总体设计来讲是非常简单的,但是就具体的实现来说,由于其中涉及很多对象的交互,我想很少人能够地把它弄清楚.为了让读者 ...
- 记录一次bug解决过程:resultType和手动开启事务
一.总结 二.BUG描述:MyBatis中resultType使用 MyBatis中的resultType类似于入参:parameterType.先看IDCM项目中的实际使用案例代码,如下: // L ...
- Web Api 与 Andriod 接口对接开发经验
最近一直急着在负责弄Asp.Net Web Api 与 Andriod 接口开发的对接工作! 刚听说要用Asp.Net Web Api去跟 Andriod 那端做接口对接工作,自己也是第一次接触Web ...
- ASP.NET Core中的依赖注入(5): ServiceProvider实现揭秘 【解读ServiceCallSite 】
通过上一篇的介绍我们应该对实现在ServiceProvider的总体设计有了一个大致的了解,但是我们刻意回避一个重要的话题,即服务实例最终究竟是采用何种方式提供出来的.ServiceProvider最 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】四.开发设备驱动
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 开发准备 把“开发包”内的所有文件复制到项目的“bin”目录下,或项目下的专用生成目录.开发包 ...
- java web学习总结(二十) -------------------监听器属性详解
一.监听域对象中属性的变更的监听器 域对象中属性的变更的事件监听器就是用来监听 ServletContext, HttpSession, HttpServletRequest 这三个对象中的属性变更信 ...
随机推荐
- Solution -「LOCAL」割海成路之日
\(\mathcal{Description}\) OurOJ. 给定 \(n\) 个点的一棵树,有 \(1,2,3\) 三种边权.一条简单有向路径 \((s,t)\) 合法,当且仅当走过一条 ...
- 疑难杂症:运用 transform 导致文本模糊的现象探究
在我们的页面中,经常会出现这样的问题,一块区域内的文本或者边框,在展示的时候,变得特别的模糊,如下(数据经过脱敏处理): 正常而言,应该是这样的: emmm,可能大图不是很明显,我们取一细节对比,就非 ...
- [题解]Codeforces Round #254 (Div. 2) B - DZY Loves Chemistry
链接:http://codeforces.com/contest/445/problem/B 描述:n种药品,m个反应关系,按照一定顺序放进试管中.如果当前放入的药品与试管中的药品要反应,危险系数变为 ...
- 跟Excel说拜拜,这款可视化报表制作工具入股不亏!
相信很多人如果看到漂亮的图表都会很感叹,"为什么可以做的这么漂亮,这么好看?","这个应该怎么做呢?用什么工具可以实现呢?".制作漂亮的可视化一般有这样几个方 ...
- 如何处理大体积 XLSX/CSV/TXT 文件?
在开发过程中,可能会遇到这样的需求,我们需要从本地的 Excel 或 CSV 等文件中解析出信息,这些信息可能是考勤打卡记录,可能是日历信息,也可能是近期账单流水.但是它们共同的特点是数据多且繁杂,人 ...
- starter
传统的 Spring 项目想要运行,不仅需要导入各种依赖,还要对各种 XML 配置文件进行配置,十分繁琐,但 Spring Boot 项目在创建完成后,即使不编写任何代码,不进行任何配置也能够直接运行 ...
- centos7 下搭建 hfish 2.1.0
HFish是一款基于 Golang 开发的跨平台多功能主动攻击型蜜罐网络钓鱼平台框架系统,为了企业安全防护测试做出了精心的打造 HFish 开发的官网:https://hfish.io HFish地址 ...
- C#comboBox取消SelectedIndexChanged事件
问题: comboBox在加载数据源时会默认引发SelectedIndexChanged事件. 解决: 在comboBox加载数据源时添加如下代码 cmbGroupName.SelectedIndex ...
- JAVA 猜拳游戏
JAVA 猜拳游戏 题目:通过控制台方式实现一个人机对战的猜拳游戏 用户通过输入(0.石头子 1.剪刀 2.布),机器随机生成(0.石头子 1.剪刀 2.布) 要求: 能打印玩家的对局信息,胜利的次数 ...
- Linux du命令和df命令区别
du 命令 1.命令格式: du [选项][文件] 2.命令功能: 显示每个文件和目录的磁盘使用空间. 3.命令参数: -a或-all 显示目录中个别文件的大小. -b或-bytes 显示目录或文件大 ...