实际和形式参数列表的长度Java不同

时间:2015-09-24 18:25:31

标签: java

我一直得到那个构造函数largeCylinder = new Cylinder(label,height,radius);与我班级设定的参数不同。

主要:

if(isset($_POST['buttonname']))
{

function;
}

课堂气缸:

import java.util.Scanner;
public class CylinderApp {
   public static void main(String[] args) {
   ////////////////////////////////////////
      String label;
      double radius, height;
      Scanner scanz = new Scanner(System.in);
   ///////////////////////////////////////
      Cylinder largeCylinder;
   ///////////////////////////////////////
      System.out.println("Enter label, radius, and height for a cylinder.");
      System.out.print("label: ");
      label = scanz.nextLine();
      System.out.print("radius: ");
      radius = Double.parseDouble(scanz.nextLine());
      System.out.print("height: ");
      height = Double.parseDouble(scanz.nextLine());
   /////////////////////////////////
     largeCylinder = new Cylinder(label, height, radius);
     System.out.println(largeCylinder);
   }
}

我不明白为什么在Cylinder.class中设置标签,半径和高度时参数不匹配

1 个答案:

答案 0 :(得分:2)

在主要课程中调用此行时:

largeCylinder = new Cylinder(label, height, radius);

你得到一个错误bcz你的Cynlinder类中没有构造函数可以做到这一点。事实上,你的cynlinder类中根本没有构造函数。

将它放入您的Cylinder类并再试一次:

public Cylinder(String constructLabel, double constructHeight, double constructRadius) {
    // required constructor class
    label = constructLabel;
    height = constructHeight;
    radius = constructRadius;
}

现在创建对象并执行此操作以计算柱面:

System.out.println(largeCylinder);

你的另一个选择就是说:

largeCylinder = new Cylinder();
largeCylinder.setLabel(label);
largeCylinder.setRadius(radius);
largeCylinder.setHeight(height);
System.out.println(largeCylinder);