конструктор ItemToPurchase в классе ItemToPurchase не может быть применен к данным типам; - PullRequest
0 голосов
/ 14 февраля 2020

Я просматривал форумы, но не могу понять, в чем именно заключается моя проблема. Это классное задание, и все отлично с моей стороны. Когда я загружаю свой код в zybook для отправки, результаты выводятся правильно, но я получаю ошибки с моими функциями set и get в соответствии с указанными c модульными тестами.

"Tests item.setName("Chocolate Chips") and item.getName() == "Chocolate Chips"

Compilation failed
zyLabsUnitTest.java:5: error: constructor ItemToPurchase in class ItemToPurchase cannot be applied to given types;
      ItemToPurchase item = new ItemToPurchase();
                            ^
  required: String,int,int
  found: no arguments
  reason: actual and formal argument lists differ in length
1 error"

Я не могу изменить закрытые поля на публичные c как указано в назначении, они должны быть частными. Вот мой код, если кто-то достаточно любезен, чтобы взглянуть

package onlineshoppingcart;
import java.util.*;

public class OnlineShoppingCart {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
       Scanner kb = new Scanner(System.in);
       System.out.println("Item 1");   
       System.out.println("Enter the item name:");
       String n;
       n = kb.nextLine();


       System.out.println("Enter the item price:");
       int p;
       p=kb.nextInt();

       System.out.println("Enter the item quantity:");
       int q;
       q=kb.nextInt();

       System.out.println();

       ItemToPurchase item;
       item = new ItemToPurchase(n, p, q);
       //item.setName("Chcolate Chips");//testing to see if set & get are ==
       //System.out.println(item.getName());//with my manual entry they are
       item.setName(n);
       item.setPrice(p);
       item.setQuantity(q);
     //fix me
     //item.getName();


       System.out.println("Item 2");
       kb.nextLine();//to stop out scanner from skipping input

       System.out.println("Enter the item name:");
       n=kb.nextLine();
       System.out.println("Enter the item price:");
       p=kb.nextInt();
       System.out.println("Enter the item quantity:");
       q=kb.nextInt();

       ItemToPurchase itemtwo;
       itemtwo = new ItemToPurchase(n,p,q);
       itemtwo.setName(n);
       itemtwo.setPrice(p);
       itemtwo.setQuantity(q);

       System.out.println();
       System.out.println("TOTAL COST");
       System.out.println(item.getName()
               +" "+ item.getQuantity()+" @ $"
               +item.getPrice()+" = $"
       +item.getPrice()*item.getQuantity());

        System.out.println(itemtwo.getName()
               +" "+ itemtwo.getQuantity()+" @ $"
               +itemtwo.getPrice()+" = $"
       +itemtwo.getPrice()*itemtwo.getQuantity());

        System.out.println();

        System.out.println("Total: $"+((
        itemtwo.getPrice()*itemtwo.getQuantity())+(
        item.getPrice()*item.getQuantity())));
    }


}


package onlineshoppingcart;

public class ItemToPurchase {

    private String itemName;
    private int itemPrice;
    private int itemQuantity;
    private ItemToPurchase(){


    String itemName = "null";
    int itemPrice = 0;
    int itemQuantity = 0;
}
    ItemToPurchase(String n, int p, int q){
        itemName = n;
        itemPrice=p;
        itemQuantity=q;
    }


public void setName(String n){
    itemName=n;

}

public void setPrice(int p){

        itemPrice = p;

}

public void setQuantity(int q){   
        itemQuantity = q;
}

public String getName(){
    return this.itemName;
}

public int getPrice(){
    return this.itemPrice;
}

public int getQuantity(){
    return this.itemQuantity;
}
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...