进一步研究方法及类.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
进一步研究方法及类

PAGE PAGE 4 进一步研究方法和类 本堂课的主要内容: 一:方法重载: 二:把对象作为参数 三:返回对象 四:java中的递归 五:访问控制 六:数组也是对象 一:方法重载: 面向对象的基本特征有三点:封装(数据和行为封装在对象之中)、多态和继承。 对于多态:有多个方面,已学过的有: 1:运算符重载;“+”;“==”等。 2:方法重载:如构造函数; 1:定义:同一个类中的2个或2个以上的方法可以同名,只有它们的参数不同即可。(overloaded) 方法重载(method overloading)是JAVA最激动人心和最有用的特性之一。构造函数就是其中之一。 方法重载是JAVA实现“一个接口,多个方法”的一种方式; 在C语言中,fabs(),abs(), labs(),用于求浮点数、整数及长整数的绝对值的三个函数。 2:class Testabs{ int abs(int a){ if(a0) return (-a); return a; } long abs( long a){ if(a0) return (-a); return a; } double abs(double a){ if(a0) return (-a); return a; } } class Overload{ public static void main(String args[]){ int a=-4; double b=3.14; long c=2000000; Testabs test=new Testabs(); a=test.abs(a); b=test.abs(b); c=test.abs( c ); } } 二:把对象作为参数 把对象作为参数如同C语言中把结构体变量或数组作为函数参数;广泛应用于对象的copy、对象的比较等把对象作为基本数据处理单位时。在构造函数以及其他方面都有广泛应用。 例1: class Box { double width; double height; double depth; Box(){ width=100; height=50; depth=30; } Box(double x,double y, double z){ width=x; height=y; depth=z; } Box(double len){ width=height=depth=len; } Box(Box ob){ width=ob.width; depth=ob.depth; height=ob.height; } double volume(){ return width*height*depth; } } //一个完整的例子: class Boxdemo{ public static void main(String args[]){ Box mybox1=new Box(); Box mybox2=new Box(7); Box mybox3=new Box(5,7,9); Box mybox4=new Box(mybox1);//构造新对象且其初始状态与一已存在的对象相同 Box mybox5=mybox1;//与上述比较。 double vol1,vol2,vol3; vol1=mybox1.volume(); System.out.prinln(“vol1=”+vol1); vol2=mybox2.volume(); System.out.prinln(“vol1=”+vol2); vol3=mybox3.volume(); System.out.prinln(“vol1=”+vol3); } } 例2:相等判断: 若有以下方法成员: boolean eaquals(Box obj){ if(width= = obj.width height= = obj. height depth=obj. depth) return true; retrun false; } 则: if(mybox1.equals(mybox2)= = true){ 。。。。。。; } 三:返回对象 在系统类String类的方法成员在,已大量采用。 如: 3: String toLowerCase();//返回字符串对象。 4: String toUpperCase(); 算法描述如下: String toLowerCase(){ 1:char ch[]=new char(this.length); 2:对于“thi

文档评论(0)

woai118doc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档