如何让女朋友理解 方法重载

  • 方法重载
    这个在我自己的理解就是 同一个方法 因为你提供的参数不同 这个方法运行的效果是不一样的.虽然他的方法名称是一样的.说起来有些拗口 我们依旧走进荣耀峡谷来看一下这个问题.

你选好了英雄 选好了铭文 进入了游戏
非常开心得走到了中路 看到地方英雄非常嚣张的站在了中路
你很生气的上去锤了他一下.


image.png

你这个的操作 我们可以定义为一个方法
叫做attack

 public void attack(Hero hero){
       System.out.println("你锤了一下对面的"+hero.getName());
   }

然后这个英雄被你锤回家了
你站在塔下十分的无聊 你对着地板 锤了一下地板
你这个 依然可以叫做attack这个方法
只是刚才你锤的对象是不同的
你是不会对地板造成伤害的
这时候这个方法可以写成

 public void attack(){
        System.out.println("你很无聊 自己打了一下地板 地板没有理你");
    }

然后你发现 对面的小乔和大乔一起来跟你对线
你就很生气
锤了他们俩
而你这个时候的锤 依旧是attack

    public void attack(Hero hero1,Hero hero){
        System.out.println(hero1.getName() + "和" + hero.getName()+"都被你锤了");
    }

但是效果和面对的英雄都是不同的 而你这个不同的英雄
被称作 参数
也就是说 你的参数不同 虽然你的方法名字相同 但是也是可以运行
java会根据你的不同参数进入到不同的方法中

public static void main(String[] args) {
        Hero A = new Hero();
        A.setName("大乔");

        Hero B = new Hero();
        B.setName("小乔");

        test test = new test();
        test.attack();
        System.out.println("=================================");
        test.attack(A);
        System.out.println("=================================");
        test.attack(A,B);
    }

效果如下



这就是方法的重载

你可能感兴趣的:(如何让女朋友理解 方法重载)