Java 2 —面向对象程序设计 Chapter 8

Java 2 —面向对象程序设计 Chapter 8

ID:40238728

大小:929.50 KB

页数:73页

时间:2019-07-28

Java 2 —面向对象程序设计 Chapter 8_第1页
Java 2 —面向对象程序设计 Chapter 8_第2页
Java 2 —面向对象程序设计 Chapter 8_第3页
Java 2 —面向对象程序设计 Chapter 8_第4页
Java 2 —面向对象程序设计 Chapter 8_第5页
资源描述:

《Java 2 —面向对象程序设计 Chapter 8》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Chapter8类的其他功能8-1方法的重载8-1-1重载所谓的“重载”是指相同的方法名称,若参数个数不同,或参数个数相同、类型不同的话,方法便具有不同的功能。范例:01//app8_1,圆形类CCircle,加入字符串类型的color成员02classCCircle//定义类CCircle03{04privateStringcolor;05privatedoublepi=3.14;06privatedoubleradius;0708publicvoidsetColor(Stringstr){//赋值color的方法09color=str;10}11publicvoidse

2、tRadius(doubler){//赋值radius的方法12radius=r;13}14publicvoidsetAll(Stringstr,doubler){//同时赋值color与radius15color=str;16radius=r;17}18publicvoidshow(){//输出半径、颜色与圆面积19System.out.println("color="+color+",Radius="+radius);20System.out.println("area="+pi*radius*radius);21}22}2324publicclassapp8_125{

3、26publicstaticvoidmain(Stringargs[])27{28CCirclecir1=newCCircle();2930cir1.setColor("Red");//赋值cir1的color31cir1.setRadius(2.0);//赋值cir1的radius32cir1.show();3334cir1.setAll("Blue",4.0);//同时赋值cir1的color和radius35cir1.show();36}37}/*app8-1OUTPUT-------color=Red,Radius=2.0area=12.56color=Blue,R

4、adius=4.0area=50.24------------------------*/下面的例子把app8_1的setColor()、setRadius()与setAll()三个方法用Java重载的特性,以单一方法setCircle来取代。从本例可看出,setColor()、setRadius()与setAll()均是在赋值对象的数据成员,这好比是家中分别买了冷气机、暖气机和除湿机一样,不但占空间,且维护上也不方便。Java的重载功能,恰可补足这方面的缺憾。01//app8_2,函数的重载02classCCircle//定义类CCircle03{04privateStr

5、ingcolor;05privatedoublepi=3.14;06privatedoubleradius;0708publicvoidsetCircle(Stringstr){//赋值color成员09color=str;10}11publicvoidsetCircle(doubler){//赋值radius成员12radius=r;13}14publicvoidsetCircle(Stringstr,doubler){//同时赋值color与radius15color=str;16radius=r;17}18publicvoidshow(){19System.out.p

6、rintln("color="+color+",Radius="+radius);20System.out.println("area="+pi*radius*radius);21}22}2324publicclassapp8_225{26publicstaticvoidmain(Stringargs[])27{28CCirclecir1=newCCircle();2930cir1.setCircle("Red");//调用第8行的setCircle()方法31cir1.setCircle(2.0);//调用第9行的setCircle()方法32cir1.show();33

7、34cir1.setCircle("Blue",4.0);//调用第14行的setCircle()方法35cir1.show();36}37}/*app8-2OUTPUT-------color=Red,Radius=2.0area=12.56color=Blue,Radius=4.0area=50.24------------------------*/从上例可看出,通过方法的重载,只需有一个方法名称,却可拥有不同的功用,使用起来相当的方便。图8-1使用重载时,方法会根据参数的个数与类型来调用相对应的方法8-1-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。