栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java学习之路:多态性

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java学习之路:多态性

理解多态性

对象的多态性:父类的引用指向子类的对象

    可以直接应用在抽象类和接口上

在Java中,子类的对象可以替代父类的对象使用

    一个变量只能有一种确定的数据类型

    一个引用类型变量可能指向(引用)多种不同类型的对象

    子类可以看做是特殊的父类,使用父类类型的引用可以指向子类的对象

例:

Person p = new Student();Object o = new Person();//Object类型的变量o,指向Person类型的对象o = new Student;//Object类型的变量o,指向Student类型的对象

Java引用变量的两个类型:编译时类型和运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。编译时类型和运行时类型不一致,就出现了对象的多态性。

一个引用类型变量如果声明为父类的类型,但实际引用的是子类对象,那么该变量就不能再访问子类中添加的属性和方法。

例:

 

Student m = new Student();m.school = "pku";//合法,Student类有school成员变量Person e = new Student();e.school = "pku";//非法,Person类没有school成员变量//属性时在编译时确定的,编译时e为Persn类型,没有school成员变量,因此编译错误
暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1016325.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号