多态性的练习
发布日期:2021-05-08 23:17:03 浏览次数:21 分类:博客文章

本文共 804 字,大约阅读时间需要 2 分钟。

package com.ch.exer;/* * 练习: * 1.若子类重写了父类方法,就意味着子类里定义的方法彻底覆盖了父类里的同名方法, * 系统将不可能把父类里的方法转移到子类中:编译看左边,运行看右边 *  * 2.对于实例变量则不存在这样的现象,即使子类里定义了与父类完全相同的实例变量, * 这个实例变量依然不可能覆盖父类中定义的实例变量:编译运行都看左边 *  *  *  *  */class Base {    int count = 10;    public void display() {        System.out.println(this.count);    }}class Sub extends Base {    int count = 20;    public void display() {        System.out.println(this.count);    }}public class FieldMethodTest {    public static void main(String[] args) {        Sub s = new Sub();        System.out.println(s.count);//20        s.display();//20                Base b = s;//多态性不适用于属性        //==:对于引用数据类型来讲,比较的是两个引用数据类型变量的地址值是否相同        System.out.println(b == s);//true        System.out.println(b.count);//10        b.display();//20,多态性:虚拟方法的调用,调用右边子类的方法(虚拟方法)    }}

 

上一篇:多态的笔试题目
下一篇:a instanceof A:判断对象a是否是类A的实例。如果是,返回true;如果不是,返回false

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年03月29日 10时13分16秒