个人做网站 优帮云页面模板 wordpress
news/
2025/9/26 2:10:25/
文章来源:
个人做网站 优帮云,页面模板 wordpress,智慧软文网站,wordpress vtroisJava中多态的特性#xff0c;在学习中就是很难懂#xff0c;比较抽象的概念。学的时候就犯糊涂#xff0c;但日后会发现#xff0c;基础在日常工作的理解中占有重要的角色。下面#xff0c;我将用一个代码实例#xff0c;回忆和巩固多态的概念和存在的意义。理解多态在学习中就是很难懂比较抽象的概念。学的时候就犯糊涂但日后会发现基础在日常工作的理解中占有重要的角色。下面我将用一个代码实例回忆和巩固多态的概念和存在的意义。理解多态是面向对象编程的重要一步。先来个热身看下图在mian函数调用的时候1和2的不同。2就是用了多态的思维这是最最简单的小栗子。an相当于一个引用(类型)但是它可以代表多种状态。多态(概念)所谓多态就是指一个引用(类型)在不同的情况下的多种状态。也可以理解为多态是指通过指向父类的指针来调用在不同子类中实现的方法。。场景假设一个主人养了猫和狗猫和狗都有自己爱吃的东西主人在喂它们的时候如果既要判断是猫还是狗再判断他们分别爱吃什么就显得很麻烦。如果主人养了很多种动物这样的重复判断就会浪费很多时间。有什么办法能让主人拿到一种食物就知道这是哪种动物的就好了。一个完整的 代码实例1.首先创造动物类// 动物类class Animal {int age;String name;public int getAge() {return age;}public void setAge(int age) {this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}// 动物类里面有叫和吃两个方法public void cry() {System.out.println(我不知道叫什么);}public void eat() {System.out.println(我不知道吃什么);}}2.其次分别创造猫类和狗类(他们继承于动物类)// 狗类继承于动物类class Dog extends Animal {// 覆盖(重写)方法public void cry() {System.out.println(旺旺);}public void eat() {System.out.println(我是狗我爱吃骨头);}}// 猫类继承于动物类class Cat extends Animal {// 覆盖(重写)方法public void cry() {System.out.println(喵喵);}public void eat() {System.out.println(我是猫我爱吃鱼);}}3.再者创建食物类// 食物类class Food {String name;public String getName() {return name;}public void setName(String name) {this.name name;}// 食物类里面让它有一个方法public void showName() {}}4.再者猫和狗都有自己不同的爱吃的食物(他们继承于食物类)// 鱼(食物的一种)继承于食物class Fish extends Food {public void showName() {System.out.println(食物鱼);}}// 骨头(食物的一种)继承于食物class Bone extends Food {public void showName() {System.out.println(食物骨头);}}5.主人类(就可以将动物和对应的食物统一起来)// 主人类 存在一種餵食方法class Master {// 给动物喂食物如果没有多态他要写给猫喂食和给狗喂食两个方法// 有了多态以后即使再来好多动物用这一个函数就可以了public void feed(Animal an, Food f) {an.eat();f.showName();}}6.最后方法的调用(测试)public class DuoTaiDemo {public static void main(String args[]) {Master master new Master();master.feed(new Dog(), new Bone());// hin方便可以再试试master.feed(new Cat(), new Fish());}}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917787.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!