对于看似简单的Java代码,我遇到了奇怪的错误。我在这里做错了什么?

时间:2019-12-11 00:17:09

标签: java constructor

我有一个关于软件类的最终项目,该项目分为几部分。对于第一部分,这里是说明:

  

任务1-1:
  创建一个名为库存的类

     
      
  1. 由三个数据成员组成:部件号由2个字母组成,后跟四个数字(例如AB1234),说明   由5至25个字母组成,用于描述商品(例如,木制   爪锤),以及一个由0到0之间的整数组成的数量   1000。

  2.   
  3. 创建一个默认构造函数,将零件号设置为AA0000,将描述设置为“测试项目”,并将数量设置为零。

  4.   
  5. 创建一个参数化的构造函数,该函数将零件号,描述和数量设置为发送给该构造函数的参数值。

  6.   
  7. 为每个将数据成员值更改为传递给该方法的参数的数据成员创建设置方法。同时创建一个组   检索每个数据成员的get方法。

  8.   
  9. 创建一个名为show part的方法,该方法显示对象的格式化内容。

  10.   

看起来很简单,是吗?好吧,显然我在做错事,但是我不确定是什么错误,可能是一个小错误,或者我只是不知道自己在做什么。我尝试删除构造函数和某些方法(尤其是showPart()),同时遇到相同或相似的错误。

这是我的代码:

public class InventoryFinal {
    public static void main(String[] args) {

        String partNo;
        String prodDesc;
        int quantity;

        public InventoryFinal() {
            partNo = "AA0000";
            prodDesc = "Test Item";
            quantity = 0;
        }

        public InventoryFinal(String s, String s2, int i) {
            partNo = s;
            prodDesc = s2;
            quantity = i;
        }

        public void setPartNo(String sSet) {
            partNo = sSet;
        }

        public void setProdDesc(String sSet2) {
            prodDesc = sSet2;
        }

        public void setQuantity(int iSet) {
            quantity = iSet;
        }

        public String getPartNo() { return partNo; }
        public String getProdDesc() { return prodDesc; }
        public int getQuantity() { return quantity; }

        public void showPart() {
            System.out.println("Item#: " + partNo);
            System.out.println("Description: " + prodDesc);
            System.out.println("Quantity: " + quantity);
        }

        showPart();
    }
}

它给我带来的错误对我来说并没有多大意义。我在做什么错了?

File: M:\Intro to Software\InventoryFinal.java  [line: 8]
Error: Syntax error on token "public", new expected
File: M:\Intro to Software\InventoryFinal.java  [line: 8]
Error: Syntax error on token "{", { expected after this token
File: M:\Intro to Software\InventoryFinal.java  [line: 42]
Error: Syntax error, insert "}" to complete ClassBody
File: M:\Intro to Software\InventoryFinal.java  [line: 42]
Error: Syntax error, insert ";" to complete Statement

1 个答案:

答案 0 :(得分:2)

您不能具有嵌入式方法。目前,您在主方法中拥有所有字段和方法

应该更像

public class InventoryFinal {

    String partNo;
    String prodDesc;
    int quantity;

    public static void main(String[] args) {
        //create new instances and call methods from here
    }

    public InventoryFinal() {
        partNo = "AA0000";
        prodDesc = "Test Item";
        quantity = 0;
    }

    public InventoryFinal(String s, String s2, int i) {
        partNo = s;
        prodDesc = s2;
        quantity = i;
    }

    public void setPartNo(String sSet) {
        partNo = sSet;
    }

    public void setProdDesc(String sSet2) {
        prodDesc = sSet2;
    }

    public void setQuantity(int iSet) {
        quantity = iSet;
    }

} // close class