如何在Java中实现多态
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,小编给大家分享一下如何在Java中实现多态,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!/** 题目: 人可以(孩子,学生,老师) 吃 水果(苹果,葡萄,芒果,菠萝)
千家信息网最后更新 2025年02月03日如何在Java中实现多态
小编给大家分享一下如何在Java中实现多态,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
/** 题目: 人可以(孩子,学生,老师) 吃 水果(苹果,葡萄,芒果,菠萝) 思路: 1. 抽象出类 : 人(Person){孩子(Baby),学生(Student)}, 水果(Fruit){苹果(Apple),葡萄(Grape),芒果(Mango)} 2. 找出类的关系: 水果 -> 人 (孩子,学生) 是 人的分类 也是人只是声明可以吃水果, 但是吃水果的具体执行者 是 (孩子,学生) (苹果,葡萄,芒果) 是 水果的分类 3. 找出属性: 孩子,学生(姓名,水果引用) 4. 找出方法: 孩子,学生都吃(eat)水果 子类->父类的转换 子类->父类后 父类引用调用子类复写的方法 作用 :解耦 也就是降低类与类之间的耦合度 提供可扩展性*/public class Polymorphism5 { //打印人吃水果的信息 public void output(Person p) { //实例化一个苹果 和 一个葡萄 Apple apple = new Apple("红富士"); Grape grape = new Grape("黑葡萄"); Mango mango = new Mango("大芒果"); PineApple pineApple = new PineApple("菠萝"); p.eat(apple); System.out.println(p.getName() + " 吃了 " + p.getFruit().getName()); p.eat(grape); System.out.println(p.getName() + " 吃了 " + p.getFruit().getName()); p.eat(mango); System.out.println(p.getName() + " 吃了 " + p.getFruit().getName()); p.eat(pineApple); System.out.println(p.getName() + " 吃了 " + p.getFruit().getName()); } public static void main(String[] args) { Polymorphism5 test = new Polymorphism5(); //李明吃水果 test.output(new Baby("李明")); //张涛吃水果 test.output(new Student("张涛")); //郭老师吃水果 test.output(new Teacher("郭老师")); }}abstract class Person { protected Fruit fruit; protected String name; public Person(String name) { this.name = name; } public String getName() { return this.name; } public Fruit getFruit() { return this.fruit; } //声明人是可以吃水果的 public abstract void eat(Fruit fruit);}class Teacher extends Person { public Teacher(String name) { super(name); } //吃水果 public void eat(Fruit fruit) { this.fruit = fruit; }}class Baby extends Person { public Baby(String name) { super(name); } //吃水果 public void eat(Fruit fruit) { this.fruit = fruit; }}class Student extends Person { public Student(String name) { super(name); } //吃水果 public void eat(Fruit fruit) { this.fruit = fruit; }}class Fruit { private String name; public Fruit(String name) { this.name = name; } public String getName() { return this.name; }}class PineApple extends Fruit { public PineApple(String name) { super(name); }}class Apple extends Fruit { public Apple(String name) { super(name); }}class Grape extends Fruit { public Grape(String name) { super(name); }}class Mango extends Fruit { public Mango(String name) { super(name); }}
看完了这篇文章,相信你对"如何在Java中实现多态"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
水果
学生
孩子
葡萄
芒果
苹果
子类
老师
多态
中实
方法
篇文章
菠萝
张涛
李明
分类
之间
也就是
作用
信息
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全随时待命
服务器设置为ahci
软件开发的app
junit4 数据库
数据库添加字段类型为字符串
网络安全法法律框架是怎样的
gii连接数据库失败
热力站自动化控制软件开发
软件开发企业毛利率在多少
网络安全宣传和教育计划
维护网络安全国家应该怎么做
南京疆界互联网科技
联亿鑫软件开发有限公司颜士广
河北学生网络技术开发建议
数据库保密条款
网络安全教程编发中长发
郑州网络安全会议秘书长
我的世界服务器第三方mod
网络安全的辩论串词
ssr免流服务器干什么用
荣昌租房网络安全
从本质上讲什么是一个共享数据库
数据库技术应用的是什么
新乡市网络安全自查报告
多数据库方案
软件网络技术的答案
管理远程的服务器怎么办
知网英文数据库
成都南亭网络技术有限公司
数据库安全怎么处理