很多人都知道面向对象的三大特性:继承 封装 多态,可是真正理解好这三特性并不是一件简单的事.本周我打算对多态进行研究并写下我的小例子:
// 乐器类
class MusicInstruments{
public void play(){
System.out.println("play music");
}
public void Instruments(MusicInstruments instruments){
instruments.play();
}
}
// 笛子类继承乐器类
class Flute extends MusicInstruments{
public void play(){
System.out.println("flute play music");
}
}
// 钢琴类继承乐器类
class Piano extends MusicInstruments{
public void play(){
System.out.println("piano play music");
}
}
public class DuoTai {
public static void main(String[] args) {
MusicInstruments music = new MusicInstruments();
MusicInstruments f = new Flute();
music.Instruments(f);
}
}
可以看到你只需要把一个对象当做参数传进去,这个对象必须继承父类才可以,程序就会根据你传入的类型来判断你调用的方法,不需要每个传入的类都定义一个方法,灵活。呵呵
分享到:
相关推荐
本文带您通过几个类的示例和讲解来理解Java多态性,Java多态性的概念也可以被说成“一个接口,多个方法
想要下载此文件,请先下载本人“java程序中的内存分配问题”,因为那个例子比较简单而且分析详细透彻,可以使你更容易理解,如果你对java程序执行过程中的内存分配有一定的了解,可以直接下载本文件
多态是面向对象编程中的一个重要特性,它允许一个类的引用变量指向多种实际类型。这意味着在运行时,可以调用不同的方法实现不同的功能 多态的实现方式 多态可以通过继承、接口和重写实现。子类继承父类后,可以使用...
本文精选了20道高难度的Java多态性面试题,并提供详细的答案解析,涵盖了多态性的概念、实现方式、绑定...通过这些高难度问题,您将全面掌握多态的原理、应用和实现技巧,展现出您对Java语言和面向对象设计的深入理解。
主要介绍了Java 继承与多态的深入理解的相关资料,子类继承父类的特征和行为,使得子类具有父类的各种属性和方法。或子类从父类继承方法,使得子类具有父类相同的行为,需要的朋友可以参考下
深入理解java多态中的变化提高代码的可维护性和可扩展性
多态是同一个行为具有多个不同表现形式或形态的能力。 举个栗子,一只鸡可以做成白切鸡、豉油鸡、吊烧鸡、茶油鸡、盐焗鸡、葱油鸡、手撕鸡、清蒸鸡、叫花鸡、啤酒鸡、口水鸡、香菇滑鸡、盐水鸡、啫啫滑鸡、鸡公煲...
多态性是对象多种表现形式的体现。在面向对象中,最常见的多态发生在使用父类的引用来引用子类的...下面这篇文章主要给大家深入的介绍了Java三大特性中多态的相关资料,有需要的朋友可以参考借鉴,下面来一起看看吧。
对多态做了详细的介绍,比较深入浅出,容易理解,适合初学者阅读
这个Java文件包含了10个示例代码,旨在深入理解Java的核心概念和用法。每个示例都展示了不同的方面,涵盖了面向对象编程、继承和多态、接口和实现、异常处理、集合框架、文件操作、多线程、输入输出、Lambda表达式和...
ava基础 基础知识 ...Java集合详解5:深入理解LinkedHashMap和LRU缓存 Java集合详解6:TreeMap和红黑树 Java集合详解7:HashSet,TreeSet与LinkedHashSet Java集合详解8:Java集合类细节精讲 JavaWeb
深入理解Java中向上转型对象体现的多态,以及面向对象思想
深入理解Java的反射机制 深入理解Java异常体系 谈谈NIO的理解 谈一谈对JUC的理解 ArrayList的底层原理 HashMap的底层原理 iava单例模式详解 JAVA的内存结构 java队列 Java基础思考之数据传递 JAVA内存泄漏详解 java...
深入理解Java的反射机制 深入理解Java异常体系 谈谈NIO的理解 谈一谈对JUC的理解 ArrayList的底层原理 HashMap的底层原理 iava单例模式详解 JAVA的内存结构 java队列 Java基础思考之数据传递 JAVA内存泄漏详解 java...
面向对象编程:深入理解Java中的类、对象、继承、封装和多态等概念。 异常处理:了解try-catch-finally块的使用,以及自定义异常的处理。 二、Java进阶知识 集合框架:熟悉Java集合框架中的List、Set、Map等接口...
【Java工程师面试复习指南】本仓库架构大部分Java工程师所需要掌握的核心知识,整合了互联网上的很多优质Java技术文章,力求打造为最完整最实用的Java开发者学习指南,如果对你有...Java集合详解:深入理解LinkedHas
由此了解软件开发的一般过程,深入理解面向对象语言的基本概念和基本原理,理解和掌握继承与多态、异常处理、输入输出流、GUI设计、JDBC数据库操作。 代码emmmm报告里贴了一部分,为什么不可以设置免费啊这个,纯粹...
然后深入解析了接口和抽象类、枚举、集合框架、泛型、输入输出、嵌套类和内部类等内容,掌握这部分内容有助于深入理解Java的底层原理;接着阐述Swing的基础和高级知识、多态、注解、国际化、Java网络、JDBC、Java...
4、深入理解Java的反射机制 5、深入理解Java异常体系 6、谈谈NIO的理解 7、谈一谈对JUC的理解 8、ArrayList的底层原理 9、HashMap的底层原理 10、Java单例模式详解 11、JAVA的内存结构 12、java队列 13、Java基础...
对Java语言的每个语法都提供了一个或多个例程讲解 大量使用流程图表示程序的执行过程,使用结构图表示程序的内部状态 每章最后都给出了典型的练习题,让读者及时练习,巩固提高,并提供了参考答案 目录 第1篇 ...