Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该如何通过“考试”;“类型”;if/else语句中单个构造函数中的参数?_Java_Apex - Fatal编程技术网

Java 我应该如何通过“考试”;“类型”;if/else语句中单个构造函数中的参数?

Java 我应该如何通过“考试”;“类型”;if/else语句中单个构造函数中的参数?,java,apex,Java,Apex,如何在if/else语句中传递构造函数的“type”参数?对于eg-cal(2,2,0,矩形)。所以,如果type=rectangle,则计算矩形的面积。如果类型=圆,则计算圆的面积 我使用的是单个构造函数。我的问题是我知道逻辑,但我不能用语法来写。我正在使用Java或Apex 我想使用if-else语句。我应该如何在代码中传递类型参数 我的程序是这样的- 如果“type”=平方,编译器将调用计算平方面积 如果“type”=圆,编译器将调用计算圆的面积 你没有。创建一个名为shape的抽象类

如何在if/else语句中传递构造函数的“type”参数?对于eg-cal(2,2,0,矩形)。所以,如果type=rectangle,则计算矩形的面积。如果类型=圆,则计算圆的面积

我使用的是单个构造函数。我的问题是我知道逻辑,但我不能用语法来写。我正在使用Java或Apex

我想使用if-else语句。我应该如何在代码中传递类型参数

我的程序是这样的-

  • 如果“type”=平方,编译器将调用计算平方面积

  • 如果“type”=圆,编译器将调用计算圆的面积


  • 你没有。创建一个名为shape的抽象类

    public abstract class Shape {
        abstract double area();  
    }
    
    然后是另外两个扩展
    Shape
    的类,每个类都提供了正确的实现

    public class Square extends Shape {
        private int side;
        public Square(int side) {
            this.side = side;
        }
        public double area() {
            return (double) side * side;
        }
    }
    
    现在在你想叫它的地方:

    Shape shape = new Square(5);
    double area = shape.area();
    
    Int radius = 4;
    shape = new Circle(radius);
    double circle area = shape.area();
    

    你没有。创建一个名为shape的抽象类

    public abstract class Shape {
        abstract double area();  
    }
    
    然后是另外两个扩展
    Shape
    的类,每个类都提供了正确的实现

    public class Square extends Shape {
        private int side;
        public Square(int side) {
            this.side = side;
        }
        public double area() {
            return (double) side * side;
        }
    }
    
    现在在你想叫它的地方:

    Shape shape = new Square(5);
    double area = shape.area();
    
    Int radius = 4;
    shape = new Circle(radius);
    double circle area = shape.area();