千家信息网

Java面向对象之多态的示例分析

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要介绍Java面向对象之多态的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!/** 知识点: 多态 Polymorphism
千家信息网最后更新 2025年01月16日Java面向对象之多态的示例分析

这篇文章主要介绍Java面向对象之多态的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

/**        知识点: 多态 Polymorphism                1. 对象的多态性                        分为三种: 方法的重载, 方法的覆盖, 对象的向上向下转型                2. 基本类型的向上向下转型                3. 对象的向上向下转型 : 必须发生在子类和父类之间        注意:                1. 子类对象 可以 转换成父类对象 但是转换后子类属性和方法不可见                        当再转换成子类的时候 要强制类型转换                2. 如果直接实例父类然后 转成子类不允许 报异常 ClassCastException                3. 当子类复写了父类的方法, 子类转成父类后 调用的是子类复写的方法。*/public class Polymorphism {            public static void main(String[] args) {               //类型的转换                byte a = 1;              int b = 100;             int c = 200;             //小类型 -> 大类型                b = a;                System.out.println(b);          //大类型 -> 小类型 必须经过强制类型转换 并且转换以后可能丢失精度                a = (byte) c;                System.out.println(a);          //对象的向上向下转型                //对象向上转型  子类对象 ->  父类对象   子类对象有些属性和方法不可见                //经典语录(子类是父类)  学生是人                Person p = new Student("李明");                p.say();                //对象向下转型 父类对象 -> 子类对象 必须强制类型转换                // 人可以转换成学生                Student s = (Student) p;                s.say();                s.study();              //Student s2=(Student)new Person();                //s2.say();        }}class Person {               public void say() {                System.out.println("说话");        }}class Student extends Person {             private String name;  public Student(String name) {            this.name = name;        }       public void say() {                System.out.println("说英语");        }       public void study() {                System.out.println("学习");        }        }

以上是"Java面向对象之多态的示例分析"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0