暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Java父子反目成仇!私房钱引发的编程惨案…

导语
程序员小明最近被一段Java代码整疯了——
父类的属性明明写着100块,子类却显示余额不足!
这究竟是道德的沦丧,还是继承的扭曲?
且看《Java家庭伦理剧》之**"父子撞衫引发的血案"**!



第一集:撞衫不可怕,谁穷谁尴尬

剧情

  • 父类老父亲偷偷藏了100块私房钱:

    class 老父亲 {  
        String 私房钱 = "床底下的100块";  
    }  
    • 儿子叛逆期,也搞了个同名钱包:

      class 儿子 extends 老父亲 {  
          String 私房钱 = "手机壳里的5毛"// 大型撞衫现场!  
      }

      翻车现场

        儿子 小明 = new 儿子();  
        System.out.println("小明钱包:" + 小明.私房钱); // 输出:手机壳里的5毛  
        System.out.println("老父亲视角:" + ((老父亲)小明).私房钱); // 输出:床底下的100块 

        灵魂拷问
        全家一起逛街,小明以为全家有100.5元,
        结果结账时——父子各掏各的,当场社死!💸



        第二集:私房钱去哪了?构造方法埋大坑

        剧情
        老父亲在构造方法里偷偷塞钱:

          class 老父亲 {  
              int 私房钱;  
              老父亲() {  
                  私房钱 = 100// 藏在《Java编程思想》书里  
              }  

          儿子继承时一顿骚操作:

            class 儿子 extends 老父亲 {  
                int 私房钱; // 又搞同名!  
                儿子() {  
                    super(); // 父类构造方法默默塞了100  
                    this.私房钱 = 1// 儿子只给自己塞1块  
                }  
            }
             

            惨烈结局
            老妈查账时:

              System.out.println(儿子.私房钱); // 1块(儿子觉得稳了)  
              System.out.println(((老父亲)儿子).私房钱); // 100块(老爸偷笑) 
                

              结果老妈以为全家总资产101块,
              其实父子各自为政——根本没法凑钱买Switch!🎮



              第三集:Get方法引发的信任危机

              骚操作升级
              老父亲用get私房钱()
              方法公开财产:

                class 老父亲 {  
                    private int 私房钱 = 100;  
                    public int get私房钱() { return 私房钱; } // 表面公开  
                }

                儿子继承后光速踩坑:

                  class 儿子 extends 老父亲 {  
                      private int 私房钱 = 500// 另起炉灶!  
                      // 忘记重写get方法!!  

                  家庭崩坏

                    儿子 小明 = new 儿子();  
                    System.out.println("老妈查账:" + 小明.get私房钱()); // 输出100(老爸的!)  
                    System.out.println("儿子实际:" + 小明.私房钱); // 输出500(自己的!)  
                      

                    老妈怒斥:“说好的500呢?”,儿子背锅——



                    Java版《罗生门》诞生!


                    大结局:程序员の求生指南

                    1️⃣ 避免撞衫:父子属性别同名!非要同名请用super.属性
                    明算账!
                    2️⃣ 统一钱包:用getter/setter
                    管钱,别让属性裸奔!
                    3️⃣ 构造方法别偷懒:父类的属性记得用super()
                    初始化!



                    互动话题
                    你在代码里见过哪些“父子反目”的骚操作?


                    关注我,带你用吃瓜姿势学编程! 🍉



                    (下期预告:《接口与实现类的离婚官司》——彩礼到底该不该退?)


                    文章转载自让天下没有难学的编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                    评论