「多态java计算图形面积」多态java计算图形面积的方法

博主:adminadmin 2022-11-27 06:58:07 57

今天给各位分享多态java计算图形面积的知识,其中也会对多态java计算图形面积的方法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

JAVA编程 利用多态的原理实现不同类型的形状计算边数和面积

貌似 正方形的 w 跟 h 是相等的吧?

一下代码仅供参考

public class TestCircle {

public static void main(String[] args) {

Shape shape1 = new Circle(2);

Shape shape2 = new Triangle(10, 20);

Shape shape3 = new Square(20);

System.out.println("圆形(r=2)的边数:" + shape1.getBorders());

System.out.println("圆形(r=2)的面积:" + shape1.getArea());

System.out.println("三角形(w=10,h=20)的边数:" + shape2.getBorders());

System.out.println("三角形(w=10,h=20)的面积:" + shape2.getArea());

System.out.println("正方形(h=20)的边数:" + shape3.getBorders());

System.out.println("正方形(h=20)的面积:" + shape3.getArea());

}

}

interface Shape {

int getBorders();

double getArea();

}

class Circle implements Shape {

int r;

public Circle(int r) {

super();

this.r = r;

}

@Override

public int getBorders() {

return 1;

}

@Override

public double getArea() {

return Math.PI * Math.pow(r, 2);

}

}

class Triangle implements Shape {

int w;

int h;

public Triangle(int w, int h) {

super();

this.w = w;

this.h = h;

}

@Override

public int getBorders() {

return 3;

}

@Override

public double getArea() {

return w * h / 2;

}

}

class Square implements Shape {

int w;

public Square(int w) {

super();

this.w = w;

}

@Override

public int getBorders() {

return 4;

}

@Override

public double getArea() {

return Math.pow(w, 2);

}

}

Java利用方法的重载计算圆形和矩形的面积

public class Test {

public static void main(String[] args) {

System.out.println("圆的面积:" + area(2));

System.out.println("三角形的面积:" + area(3,4,5));

System.out.println("矩形的面积:" + area(3,4));

}

//求圆的面积

public static double area(double radius){

return Math.PI * radius * radius;

}

//求三角形的面积

public static double area(double a, double b, double c){

double s = (a + b + c) / 2;

return Math.sqrt(s*(s-a)*(s-b)*(s-c));

}

//求矩形的面积

public static double area(double width, double height){

return width * height;

}

//求椭圆的面积

/* public static double area(double a, double b){

return Math.PI * a * b;

}*/

}

求椭圆面积需要2个参数,求矩形面积也需要2个参数,这些参数的数据类型、顺序和数量完全一致,无法实现重载,除非改名。

用java计算三角形、矩形、圆的面积

//图形类作父类

public class Diagram {

//计算面积

public double area(){return 0;}

}

//圆类:继承图形类

public class Crile extends Diagram{

private double r;

public Crile(double r){

this.r=r;

}

//重写area方法

public double area(){

double r=this.r;

return r*r*3.14;

}

}

//三角形类:继承图形类

public class Triangle extends Diagram{

private double high; //三角形的高

private double bottom; //三角形的底

public Triangle(double h,double b){

this.high=h;

this.bottom=b;

}

public double area(){

double h=this.high;

double b=this.bottom;

return h*b/2;

}

}

//测试

public class test {

public static void main(String[] args) {

System.out.println("请选择图形的类型:(1)三角形(2)圆");

Scanner scanner=new Scanner(System.in);

int i=scanner.nextInt();

if(i==1){

System.out.println("你选择的是三角形!请输入三角形高长(回车结束):");

double high=scanner.nextLong();

System.out.println("请输入三角形底长(回车结束):");

double bottom=scanner.nextLong();

//这里体现动态,如果选择的图形是三角形,那么创建三角形类

//调用的时候就是调用的三角形的方法

Diagram diagram=new Triangle(high, bottom);

System.out.println("三角形的面积为:"+diagram.area());

}

if(i==2){

System.out.println("你选择的是圆形!请输入圆的半径(回车结束):");

double r=scanner.nextLong();

Diagram diagram=new Crile(r);

System.out.println("三角形的面积为:"+diagram.area());

}

}

}

其他的一样了,纯手工 望采纳!

用java编程。利用多态编程创建一个Square类,实现求三角形,正方形和圆形的面积

抽象类:

public abstract class Square {

public abstract double sanjiaoxing(double l,double h);

public abstract double zhengfangxing(double a,double b);

public abstract double yuanxing(double r);

}

实现类:

public class Shixian extends Square{

@Override

public double sanjiaoxing(double l, double h) {

double s=0.5*h*l;

return s;

}

@Override

public double yuanxing(double r) {

double s=3.14*r*r;

return s;

}

@Override

public double zhengfangxing(double a, double b) {

double s=a*b;

return s;

}

public static void main(String[] args) {

Shixian shixian=new Shixian();

System.out.println(shixian.sanjiaoxing(2, 3));//求出三角形的面积

System.out.println(shixian.zhengfangxing(2, 3));//求出正方形的面积

System.out.println(shixian.yuanxing(2));//求出圆形的面积

}

}

利用java的多态和继承计算圆形,长方形,三角形的面积

class Shape

{

    String name;

    public Shape(String name){this.name=name;}

    protected double calculateArea(){};

    public String toString(){ return name;}

}

class Circle extends Shape

{

    public Circle()

    {

        super("Circle");

    }

    public double calculateArea(){

     System.out.println("calculating...[Circle]");

     return 100;}

}

class Rectangular extends Shape

{

    public Rectangular()

    {

        super("Rectangular");

    }

     public double calculateArea(){

      System.out.println("calculating...[Rectangular]");

      return 200;}

}

class Main

{

    public static void main(String[] args)

    {

        Shape shape=new Rectangular();

        System.out.println(shape.calculateArea());

    }

}

多态java计算图形面积的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于多态java计算图形面积的方法、多态java计算图形面积的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-27,除非注明,否则均为首码项目网原创文章,转载请注明出处。