java 圆 继承_java 类的继承(转)
這個(gè)星期主要是學(xué)習(xí)了Java中類(lèi)的繼承問(wèn)題.繼承就是由已有的類(lèi)創(chuàng)建新類(lèi),通過(guò)子類(lèi)繼承父類(lèi)的方法,實(shí)現(xiàn)一些功能.
下面就是老師布置作業(yè)的其中一個(gè):
定義父類(lèi)圓,通過(guò)繼承,獲得子類(lèi)球、圓錐、圓柱,子類(lèi)具有計(jì)算體積的功能。
1)新建文件夾Test1;
2)定義父類(lèi)Circle,Circle具有保護(hù)成員變量半徑r,并提供成員方法setR、getArea和帶參數(shù)的構(gòu)造函數(shù);
3)子類(lèi)球Ball具有獲得體積的成員方法getValume;
4)子類(lèi)圓錐Cone、圓柱Cylinder具有私有的成員變量高h(yuǎn)igh、設(shè)置高的成員方法setHigh()和獲得體積的getValume;
5)3個(gè)子類(lèi)都提供帶參數(shù)的構(gòu)造函數(shù);
6)3個(gè)子類(lèi)在重設(shè)半徑后,應(yīng)獲得正確的體積;
7)編寫(xiě)測(cè)試類(lèi)進(jìn)行測(cè)試
代碼:
Circle.java
package test3;
public class Circle {
public static void main(String[] args) {
// TODO Auto-generated method stub
}
protected double r;
public void setR(double r) {
this.r = r;
}
public double getArea() {
return 3.14*r*r;
}
//public Circle(double r) {
//super();
//this.r = r;
//}
public Circle() {
super();
// TODO Auto-generated constructor stub
}
}
Ball.java
package test3;
import java.util.Scanner;
public class Ball extends Circle{
public static void main(String[] args) {
// TODO Auto-generated method stub
reader = new Scanner(System.in);
Ball ball =new Ball();
double r;
System.out.println("請(qǐng)輸入圓的半徑:");
r = reader.nextDouble();
ball.setR(r);
System.out.println("體積:" + ball.getValumn());
}
private static Scanner reader;
public double getValumn() {
return getArea()*r*4/3;
}
public Ball() {
super();
// TODO Auto-generated constructor stub
}
}
Cone.java
package test3;
import java.util.Scanner;
public class Cone extends Circle{
//public Cone(double r) {
//super(r);
TODO Auto-generated constructor stub
//}
//private double valumn;
private double high;
private static Scanner reader;
public void setHigh(double high) {
this.high = high;
}
public double getValumn() {
return getArea() *high/3;
}
public Cone() {
super();
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// TODO Auto-generated method stub
reader = new Scanner(System.in);
Cone cone = new Cone();
double high,r;
System.out.println("請(qǐng)輸入圓錐的高:");
high = reader.nextDouble();
System.out.println("請(qǐng)輸入圓錐的半徑:");
r = reader.nextDouble();
cone.setHigh(high);
cone.setR(r);
System.out.println("體積:" + cone.getValumn());
}
}
Cylinder.java
package test3;
import java.util.Scanner;
public class Cylinder extends Circle{
public static void main(String[] args) {
// TODO Auto-generated method stub
reader = new Scanner(System.in);
Cylinder cy = new Cylinder();
double r,high;
System.out.println("請(qǐng)輸入的高:");
high = reader.nextDouble();
System.out.println("請(qǐng)輸入半徑:");
r = reader.nextDouble();
cy.setHigh(high);
cy.setR(r);
System.out.println("體積:" + cy.getValumn());
}
private double high;
private static Scanner reader;
public void setHigh(double high) {
this.high = high;
}
public double getValumn() {
return getArea() *high;
}
public Cylinder() {
super();
// TODO Auto-generated constructor stub
}
}
Java中類(lèi)的繼承,更多的可以查看http://www.cnblogs.com/dolphin0520/p/3803432.html,這里有詳細(xì)的介紹,我大致就是看這個(gè)學(xué)習(xí)的.
---------------------
作者:yang_tang
來(lái)源:CSDN
原文:https://blog.csdn.net/yang_tang/article/details/78070791?utm_source=copy
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!
總結(jié)
以上是生活随笔為你收集整理的java 圆 继承_java 类的继承(转)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java http请求原理_浅谈Spri
- 下一篇: html5 密码框明文,elementU