Java高阶部分知识点汇总(四)-继承与多态
前言
前面讲了面向对象的两个特性,封装和继承。本文将面向对象的最后一个特性多态,而多态是在继承的基础上存在的。
Java的引用变量有两个类型:一个是编译时的类型,另一个是运行时的类型。编译时的类型由声明变量时所使用的类型决定,运行时类型由实际赋给变量的对象决定。如果编译时类型和运行时类型不一致,就会出现多态。
至于什么是编译时类型和运行时类型,请继续往下看。
一.多态性
先来看一段程序:
class Bird{
public void myInfo(){
System.out.println("我是鸟");
}
}
class Ostrich extends Bird{
public void myInfo(){
System.out.println("我是鸵鸟");
}
public static void main(String[] args){
Bird bird = new Bird();
bird.myInfo();//输出:“我是鸟”
Ostrich ostrich = new Ostrich();
ostrich.myInfo();//输出:“我是鸵鸟”
Bird oB
Java高阶部分知识点汇总(四)-继承与多态相关推荐
- Java高阶部分知识点汇总(三)-内存空间的引用
前言 在前面给大家展示的代码中,有这样一行代码 Student stu = new Student(); 这行代码创建了一个Student对象,这个对象被赋给stu变量.今天我们就来好好学习一下这行代 ...
- Java高阶部分知识点汇总(三)-基本类型的包装类详讲
前言 Java语言为8个基本数据类型都提供了对应得包装类,通过8个包装类可以把8个基本数据类型的值包装成对象使用,JDK1.5提供了自动装箱和自动拆箱功能,也就是基本类型和对应包装类可以直接互相赋值使 ...
- Java高阶部分知识点汇总(二)-封装与隐藏详讲
前言 在前面程序中,经常会出现通过某个对象的直接访问其属性的情况,这会出现很多潜在问题,例如前面我们定义过的学生类Student,我可以通过其实例对象直接访问到实例的age属性,并赋值,这在Java语 ...
- Java高阶部分知识点汇总(一)- 成员变量与局部变量详讲
前言 在Java语言中,根据定义变量的位置不同,可以将变量分为两大类:成员变量与局部变量.而两者的运行机制也存在着较大的差异,本篇文章将详细介绍这两种变量的运行差异. 一.成员变量 成员变量指的是类范 ...
- linux高可用小知识点汇总-行云管家
不少运维小伙伴对于linux高可用相关知识不是很了解,今天我们小编就给大家汇总了一些,希望可以加深大家的了解.仅供参考哦! linux高可用小知识点汇总-行云管家 一.Linux是什么系统? [回答] ...
- java高并发与多线程汇总(一):基础知识(上)
java高并发与多线程汇总 往期文章推荐: java高并发与多线程汇总(一):基础知识(上) java常见面试考点(四十二):序列化与反序列化 java常见面试考点(四十三):泛型 j ...
- Java高阶代码_Java高阶语法---Volatile
背景:听说Volatile Java高阶语法亦是挺进BAT的必经之路. Volatile: volatile同步机制又涉及Java内存模型中的可见性.原子性和有序性,恶补基础一波. 可见性: 可见性简 ...
- Java高阶语法---final
背景:听说final Java高阶语法是挺进BAT必经之路. final: final关键字顾名思义就是最终不可改变的. 1.含义:final可以声明成员变量.方法.类和本地变量:一旦将引用声明为fi ...
- [react] 举例说明什么是高阶组件(HOC)的反向继承
[react] 举例说明什么是高阶组件(HOC)的反向继承 import React from 'react';const hoc = (WrappedComponent) => {// 集成需 ...
最新文章
- 北斗定位2.0版来了!普通人手机可用,全免费!
- 机器学习也可以在线做!
- 原创:PHP乱码怎么办?五种方法彻底解决PHP乱码问题
- OSO.EXE病毒专杀工具
- 敏捷开发般若敏捷系列之四:如何推广敏捷(上)(无我,无人,无众生)
- php 同步退出,phpcms phpsso不能同步退出怎么办
- PS中的Workflow的创建
- MTRR内存类型范围寄存器
- Java扫雷游戏的设计与实现毕业设计论文
- 以太网帧的目的地址从哪里来?
- lower_bound、upper_bound、equal_range详解
- 重装Win10系统其他盘的东西还在吗?
- 无需设置路由器,无需公网ip 实现永久免费内网穿透
- OpenCV的viz库学习(一)
- 如何使用ANT在命令行进行编译和测试
- apache SSI
- Java 多线程(超详细)
- 掌握电商后台设计,这一篇足矣
- Python分析香港26281套在售二手房数据!寸土寸金啊!
- 2022年全球及中国智能购物车行业头部企业市场占有率及排名调研报告
热门文章
- (进阶篇)Cookie与 Session使用详解
- webpack文章(持续更新)
- openstack之neutron linuxbridge + vlan组网
- VS2008资源问题解决方法
- 移动界面控件Essential Studio for Mobile MVC图表控件解析
- HDU 4288 Coder [线段树]
- java超级简单贪吃蛇_java实现简易贪吃蛇游戏
- mapinfo制作地图_用QGIS代替Mapinfo软件
- cad打开图纸流程图_如何一键打开超大CAD图纸,进行CAD快速看图?
- java array 元素的位置_Java常见面试题 非常实用「个人经验」