实验项目(二) Java中面向对象特性09new.docVIP

实验项目(二) Java中面向对象特性09new.doc

  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文档。上传文档
查看更多
实验项目(二) Java中的面向对象特性 一、实验目的 掌握Java中类、对象、包、接口的创建和使用。 掌握继承、封装、多态性的实现机制。 二、实验要求: 上机实验前,按照每一个实验题目的具体要求提前完成准备工作,如:查找资料、设计算法、写出全部源程序,做好预习笔记,做到有准备地上机。由实验小组组长小组学生实验小组组长实验小组组长组实验小小组组长Complex,然后编写测试类测试该复数类Complex。最后参考思考题提出并回答你的探究问题。 复数类Complex必须满足如下要求 复数类Complex的属性有: 两个int变量r和i(分别表示一个复数的实部与虚部)。 复数类Complex的方法有: Complex(int r,int i):构造方法,形参r赋值给复数的实部,i赋值给虚部。 Complex():构造方法,将复数的实部与虚部都赋值为0。 Complex complexAdd(Complex a):将当前复数对象与参数相加。 String toString():把当前复数对象的实部与虚部组合成a+bi的字符串形式,其中,a和b分别为实部与虚部的数据。 原代码: class Complex { int i,r; Complex(int r,int i) { this.r=r;this.i=i; } public Complex complexAdd(Complex c) { //对象作为参数, 按引用传递 return new Complex(r+c.r,i+c.i); //返回值应是该类的一个实例 } public String toString() { String res; if(i==0) res=r+; else if(i0) res=r+++i+i; else res=r+i+i; return res; } } class Test { public static void main(String args[]) { Complex c1=new Complex(1,2); Complex c2=new Complex(2,3); Complex c3=plexAdd(c2); System.out.println(c3.toString() ); } } 运行结果: 任务2.设计一个分数类(Rational),要求分数包括分子和分母两个变量,提供能进行分数运算的方法。然后编写一个测试类测试该类。 class Rational { private int num,den; public Rational(int n,int d) { num=n; den=(d==0?1:d);} public Rational() { this(1,1); } public Rational(Rational r) {this(r.num,r.den);} private void simplify (Rational r) { int g; if (r.num!=0) { g=getGCD (r.num,r.den); r.num/=g; r.den/=g; //处理符号 if(r.den0) { r.den=- r.den; r.num=-r.num; } } } private int getGCD(int m,int n){ int t,r; if (mn){ t=m; m=n; n=t;} r=m%n; while (r!=0) { m=n;n=r;r=m%n; } return n; } //定义找最小公倍数的方法 private int getLCM(int m,int n){ return m*n/getGCD (m,n); } public Rational add(Rational r){ Rational r1=new Rational(); //保存计算结果 //计算分母----找分母最小公倍数 r1.den=getLCM (r.den,den); //计算分子 r1.num=r1.den/den*num; r1.num+=r1.den/r.den*r.num; // 分子分母约分 simplify (r1); return r1; } public Rational minus(Rational r){ Rational r

文档评论(0)

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

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

1亿VIP精品文档

相关文档