2025年多态性不好理解 一个例子直接解决

多态性不好理解 一个例子直接解决前言 我们在开始学习 Java 过程中 可能会遇到一些比较难以理解的知识点 比如在 Java 四大特点中的多态性 可能有一部分同学在这里会卡壳 下面是根据我自己的理解并结合视频学习总结的关于多态性的理解 一个例子 1 关于多态的故事 新学期开学了 学校迎来了一些新同学 有一年级 二年级的

大家好,我是讯享网,很高兴认识大家。

前言

我们在开始学习Java过程中,可能会遇到一些比较难以理解的知识点!比如在Java四大特点中的多态性,可能有一部分同学在这里会卡壳,下面是根据我自己的理解并结合视频学习总结的关于多态性的理解

一个例子

1.关于多态的故事:新学期开学了,学校迎来了一些新同学,有一年级、二年级的、三年级的等各年级的同学,但是作为新同学不知道具体年级在哪,于是我们可以去问学校门口的指导员,指导员知道具体年级应该怎么走。
2.故事分析:我们知道无论是多少年级,最终都有一个共同特征,就是都是“年级”(父类);于是我们就可以把不同年级的学生看成是多种形态(子类);之后指导员知道所有年级(父类变量),也就知道了新同学要去的指定年级(子类对象空间)。
3.多态的理解:多态其实就是一种事物存在多种形态,在程序逻辑中,多种形态都拥有共同特征,可以将共同特征看做是他们的父类其他多种形态看作是他们的子类,使子类继承父类(子类和父类具有共同的重写方法)。
4.实现:通过父类变量指向子类对象空间来完成子类重写方法的调用。

程序实现

1.文件结构文件目录
讯享网
2.Grage类

public class Grade { 
    public void show(){ 
    System.out.println("我是共同!!!"); } } 

讯享网

3.Grade1类

讯享网public class Grade1 extends Grade{ 
    public void show(){ 
    System.out.println("我是一年级!!!"); } } 

4.Grade2类

public class Grade2 extends Grade{ 
    public void show(){ 
    System.out.println("我是二年级!!!"); } } 

5.Grade3类

讯享网public class Grade3 extends Grade{ 
    public void show(){ 
    System.out.println("我是三年级!!!"); } } 

6.Inductor类

public class Inductor { 
    private Grade grade; public Inductor() { 
    } public Inductor(Grade grade) { 
    this.grade = grade; } public Grade getGrade() { 
    return grade; } public void setGrade(Grade grade) { 
    this.grade = grade; } public void showGrade(){ 
    grade.show(); } } 

7.PolyTest测试类

讯享网public class PolyTest { 
    / * 1.关于多态的故事:新学期开学了,学校迎来了一些新同学,有一年级、二年级的、三年级的等,但是作为新同学不知道具体年级在哪, * 于是我们可以去问门口的指导员,指导员知道具体年级应该怎么走。 * 2.故事分析:我们知道无论是多少年级,最终都有一个共同特征,就是都是“年级”(父类);于是我们就可以把不同年级的学生看成是 * 多种形态(子类);之后指导员知道所有年级(父类变量),也就知道了新同学要去的指定年级(子类对象空间) * 3.多态的理解:多态其实就是一种事物存在多种形态,在程序逻辑中,多种形态都拥有共同特征,可以将共同特征看做是他们的父类 * 其他多种形态看作是他们的子类,使子类继承父类(子类和父类具有共同的重写方法) * 4.实现:通过父类变量指向子类对象空间来完成子类重写方法的调用 * @param args */ public static void main(String[] args) { 
    Inductor inductor=new Inductor();//相当 Grade1 grade1=new Grade1(); Grade2 grade2=new Grade2(); Grade3 grade3=new Grade3(); inductor.setGrade(grade2);//使得父类变量指向子类对象空间 inductor.showGrade(); } } 
小讯
上一篇 2025-04-03 20:35
下一篇 2025-01-11 07:12

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/50767.html