JAVA中方法重载概念——简单易懂

  介绍

这篇文章主要介绍了JAVA中方法重载概念——简单易懂,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

<强> 1,什么方法重载?

方法的重载指的是方法名一样,但是参数类型不一样

<强> 1.1,攻击方法重载

有一种英雄,叫做物理攻击英雄ADHero,为ADHero提供三种方法。

公共空攻击()   公共空间攻击(h2)英雄   公共空间攻击(英雄h2,英雄h3)

方法名是一样的,但是参数类型不一样
在调用方法攻击的时候,会根据传递的参数类型以及数量,自动调用对应的方法

癑AVA中方法重载概念——简单易懂"

公共类ADHero延伸英雄{公共空攻击(){   system . out。println(名称+“;进行了一次攻击,但是不确定打中谁了“);   }   公共空间攻击(英雄h2) {   system . out。println(名字+“对”;+ h2.name +“进行了一次攻击“);   }   公共空间攻击(h2英雄,英雄h3) {   system . out。println(名字+“同时对“+ h2.name +“和“;+ h3.name +“进行了攻击“);   }   公共静态void main (String [] args) {   ADHero bh=new ADHero ();   bh.name=吧徒鹆匀恕?      英雄h2=new英雄();   h2.name=案锹住?   英雄h3=new英雄();   h3.name=疤崮?      bh.attack (h2);   黑洞。攻击(h2、h3);   }      }

<强> 1.2,可变数量的参数

如果要攻击更多的英雄,就需要设计更多的方法,这样类会显得很累赘,像这样:

公共空攻击(h2)英雄   公共空间攻击(英雄h2、h3英雄)   公共空间攻击(英雄h2、h3英雄,英雄3)

这时,可以采用可变数量的参数
只需要设计一个方法
公共空攻击(英雄…英雄)
即可代表上述所有的方法了
在方法里,使用操作数组的方式处理参数英雄即可

公共类ADHero延伸英雄{   公共空间攻击(){   system . out。println(名称+“;进行了一次攻击,但是不确定打中谁了“);   }//可变数量的参数   公共空间攻击(英雄…英雄){(int i=0;我& lt;heros.length;我+ +){   system . out。println(名称+“;攻击了“+英雄[我]. name);      }   }   公共静态void main (String [] args) {   ADHero bh=new ADHero ();   bh.name=吧徒鹆匀恕?      英雄h2=new英雄();   h2.name=案锹住?   英雄h3=new英雄();   h3.name=疤崮?      bh.attack (h2);   黑洞。攻击(h2、h3);      }      }

练习:治疗
(设计一个类支持(辅助英雄)继承英雄,提供一个愈合(治疗)方法
对支持的治疗方法进行重载
()
愈合愈合(英雄h)//为指定的英雄加血
愈合(英雄h, int惠普)//为指定的英雄加了惠普的血)

答案

公共类支持扩展英雄{   公共空间愈合(){   System.out.println(“对自己进行治疗“);   }   公共空间愈合(英雄英雄){   System.out.println(“给英雄“;+ +“英雄;加血“);   }   公共空间愈合(英雄英雄,int惠普){   System.out.println(“给英雄“;+ +“英雄;加了“+ hp +“点血“);   }      }

感谢你能够认真阅读完这篇文章,希望小编分享JAVA中方法重载概念——简单易懂内容对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,遇到问题就找,详细的解决方法等着你来学习!

JAVA中方法重载概念——简单易懂