Java实验实现⼀个circle类_第六周java实验报告四
java实验报告四
(1)根据下⾯的要求实现圆类Circle。
1.圆类Circle的成员变量:radius表⽰圆的半径。
2.圆类Circle的⽅法成员:
Circle():构造⽅法,将半径置0
Circle(double r):构造⽅法,创建Circle对象时将半径初始化为r
double getRadius():获得圆的半径值
double getPerimeter():获得圆的周长
void disp():将圆的半径和圆的周长,圆的⾯积输出到屏幕
(2)继承第⼀题中的圆Circle类,派⽣圆柱体类Cylinder。要求如下:
1.圆柱体类Cylinder的成员变量:height表⽰圆柱体的⾼。
2.圆柱体类Cylinder的成员⽅法:
Cylinder(double r,double h)构造⽅法,创建Cylinder对象时将圆半径初始化为r,圆柱体⾼初始化为h。
double getHeight():获得圆柱体的⾼
double getVol():获得圆柱体的体积
void dispVol():将圆柱体的体积输出到屏幕
3.按照第⼆题的Cylinder类,接上键盘的输⼊值作为圆的半径和圆柱体的⾼,计算圆柱体的体积
实验代码:
package 官⽅;
import java.util.Scanner;public classCircle {private doubleradius;publicCircle(){this.setRadius(0);
}public Circle(doubler){this.setRadius(r);
}public doublegetRadius() {returnradius;
}public void setRadius(doubleradius) {this.radius =radius;
}public doublegetPerimeter() {return getRadius()*2*Math.PI;
}public doublegetArea() {return Math.PI*getRadius()*getRadius();
}public voiddisp(){
System.out.println("圆的半径:"+getRadius());
System.out.println("圆的周长:"+getPerimeter());
System.out.println("圆的⾯积:"+getArea());
}
}
package 官⽅;
import java.util.Scanner;public classCylinger extends Circle{private doubleheight;public doublegetHeight() {returnheight;
}public void setHeight(doubleheight) {this.height =height;
}
Cylinger (double r,doubleh){this.setRadius(r);this.setHeight(h);
}public doublegetVol(){return getArea()*getHeight();
}public voiddispVol(){
System.out.println("圆柱的体积:"+getVol());
}
}
package 官⽅;
import java.util.Scanner;public classTest {public static voidmain(String[] args){
System.out.println("输⼊圆的半径");
Scanner sc=new Scanner(System.in);double Double();
System.out.println("输⼊圆柱的⾼");double Double();
Cylinger Cy=newCylinger(r,h);
Cy.dispVol();
Cy.disp();
}
}
第六周总结
使⽤interface来定义⼀个接⼝。接⼝定义同类的定义类似,也是分为接⼝的声明和接⼝体,其中接⼝体由常量定义和⽅法定义两部分组成。
修饰符⽤于指定接⼝的访问权限,可选值为public。如果省略则使⽤默认的访问权限。
抽象类的使用接⼝名⽤于指定接⼝的名称,接⼝名必须是合法的Java标识符。⼀般情况下,要求⾸字母⼤写。
extends ⽗接⼝名列表:可选参数,⽤于指定要定义的接⼝继承于哪个⽗接⼝。当使⽤extends关键字时。
接⼝中的⽅法只有定义⽽没有被实现。
接⼝被⽤来描述⼀种抽象;接⼝也被⽤来实现解耦。
接⼝被⽤来实现抽象,⽽抽象类也被⽤来实现抽象,抽象类内部可能包含⾮final的变量,但是在接⼝中存在的变量⼀定是
final,public,static的。
与Java的类⽂件⼀样,接⼝⽂件的⽂件名必须与接⼝名相同。
抽象类与接⼝的应⽤:可以通过对象的多态性,为抽象类和接⼝实例化,这样再使⽤抽象类和接⼝的时候就可以调⽤本⼦类中所覆写过的⽅法。
之所以抽象类和接⼝不能直接实例化,是因为其内部包含了抽象⽅法,抽象⽅法本⾝是未实现的⽅法,所以⽆法调⽤。
通过对象多态性可以发现,⼦类发⽣了向上转型关系之后,所调⽤的全部⽅法,都是被覆写过的⽅法。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。