java 圆类 圆锥类_以圆类 Circle 及立体图形类 Solid 为基础设计圆柱类 Cylinder

学习内容:以圆类 Circle 及立体图形类 Solid 为基础设计圆柱类 Cylinder

代码示例:

import java.util.Scanner;

class Point3{

private double x;

private double y;

public Point3(double x,double y) {

this.x=x;

this.y=y;

System.out.println("Point Constructor run");

}

public void setX(double x) {//设置x坐标

this.x=x;

}

public double getX(){//返回x坐标

return x;

}

public void setY(double y) {//设置y坐标

this.y=y;

}

public double getY(){//返回y坐标

return y;

}

public void show() {//显示点的坐标

System.out.println("Point(X="+x+",Y="+y+")");

}

}

abstract class Plane3 extends Point3{

public Plane3(double x, double y) {

super(x, y);

}

double length() {

return 0;

}

double area() {

return 0;

}

}

class Circle1 extends Plane2 {

public Circle1(double x, double y,double radius) {

super(x,y);

this.x=x;

this.y=y;

this.radius=radius;

System.out.println("Circle Constructorrun");

}

private double x;

private double y;

final double PI=3.14159;

private double radius;

public void setX(double x) {//设置x坐标

this.x=x;

}

public final double getX(){//返回x坐标

return x;

}

public void setY(double y) {//设置y坐标

this.y=y;

}

public final double getY(){//返回y坐标

return y;

}

public void setR(double r) {

radius=r;

}

public final double getR() {

return radius;

}

public final void show() {

System.out.println("Circle(Point("+x+","+y+"),Radius="+radius+")");

}

public final double area() {

double area=PI*radius*radius;

System.out.println("Area="+area);

return 0;

}

public final double length() {

double length=2*PI*radius;

System.out.println("Length="+length);

return 0;

}

}

abstract class Solid extends Circle{

private double x;

private double y;

private double radius;

public Solid(double x, double y, double radius) {

super(x, y, radius);

this.x=x;

this.y=y;

this.radius=radius;

}

public double volume() {//计算体积

return 0;

}

public double s_Area() {//计算表面积

return 0;

}

}

public class Cylinder extends Solid{

private double x;

private double y;

private double radius;

private double height;

public Cylinder(double x, double y, double radius,double height) {

super(x, y, radius);

this.x=x;

this.y=y;

this.radius=radius;

this.height=height;

System.out.println("Cylinder Constructorrun");

}

public void setX(double x) {//设置x坐标

this.x=x;

}

public void setY(double y) {//设置y坐标

this.y=y;

}

public void setR(double r) {

radius=r;

}

public void setH(double height) {

this.height=height;

}

public double getH() {

return height;

}

public final void show() {

System.out.println("Cylinder(Circle(Point("+x+","+y+"),Radius="+radius+"),Height="+height+")");

}

public final double s_Area() {

double sarea=2*(PI*radius*radius)+(2*PI*radius)*height;

System.out.println("s_Area="+sarea);

return 0;

}

public final double volume() {

double volume=(PI*radius*radius)*height;

System.out.println("Volume="+volume);

return 0;

}

public static void main(String[] args) {

double h;

System.out.println("请输入h:");

Scanner sc=new Scanner(System.in);

h=sc.nextDouble();

Cylinder cy1=new Cylinder(1,2,3,4);

Cylinder cy2=cy1;

cy1.show();

System.out.println();

cy1.area();

cy1.length();

cy1.s_Area();

cy1.volume();

System.out.println("............................................................................................");

cy2.setH(h);

cy2.show();

System.out.println();

cy2.area();

cy2.length();

cy2.s_Area();

cy2.volume();

}

}

运行截图:

50a14c276452464434ac1bd39fdaa394.png

明天任务:以圆类 Circle 及立体图形类 Solid 为基础设计圆锥类 Cone

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值