FS370 2019-04-25 20:25 采纳率: 0%
浏览 554
已结题

关于多态属性的调用问题

  • class Fu{
  • int num=4;
  • void show(){
  • System.out.println("showFu");
  • }
  • }
  • class Zi extends Fu{
  • int num = 5;
  • void show(){
  • System.out.println("showZi");
  • }
  • }
  • public class Test1{
  • public static void main(String[] args){
  • Fu f=new Zi();
  • Zi z=new Zi();
  •     System.out.println(f.num);     *请问这个为什么打出来是4
    
  •     System.out.println(z.num);
    
  •     f.show();
    
  •     z.show();
    
  • }
    
  • }

  • *

  • 写回答

2条回答 默认 最新

  • threenewbee 2019-04-25 23:53
    关注

    Fu f=new Zi();
    因为f是Fu类型,所以看不到Z的成员。
    如果是
    System.out.println(((Z)f).num);
    则输出5

    成员变量没有“覆盖”一说。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月7日

悬赏问题

  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题
  • ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
  • ¥15 Android studio AVD启动不了
  • ¥15 陆空双模式无人机怎么做
  • ¥15 想咨询点问题,与算法转换,负荷预测,数字孪生有关
  • ¥15 C#中的编译平台的区别影响
  • ¥15 软件供应链安全是跟可靠性有关还是跟安全性有关?
  • ¥15 电脑蓝屏logfilessrtsrttrail问题