Исключение в потоке "main" java.lang.runtimeexception проблемы с общедоступным статическим void

Вот мой главный ...

public class Yamaha {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    productoYamaha p1, p2;
    p1= new productoYamaha ();
    p2= new productoYamaha ('empacador',20.00);
    p1.imprimir();
    p2.imprimir();
    System.out.println("El total a pagar es"total_a_pagar);
    // TODO code application logic here
}

И вот код, который я пишу

enter code here package yamaha;

/**
 *
 * @author Soria
 */
public class productoYamaha {
    double pProducto;
    String nProducto;

   public productoYamaha(){
       this.nProducto="";
       this.pProducto=0;
   }

   public productoYamaha (double pProducto, String nProducto){
       this.nProducto=nProducto;
       this.pProducto=pProducto;
   }
   public double gYamaha (int cantidad){
       double gcantidad;
       gcantidad= this.pProducto*cantidad;
       return gcantidad;
   }
   public void imprimir (){
       System.out.println("nombre del producto"+nProducto);
       System.out.println("precio del Producto"+pProducto);

   }
}

И у меня эта ошибка

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - Erroneous ctor sym type: at yamaha.Yamaha.main(Yamaha.java:20) C:\Users\Erick_Soria\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1 BUILD FAILED (total time: 0 seconds)

Что я делаю не так?

p2= new productoYamaha ('empacador',20.00); Две вещи: (1) параметры кажутся обратными и (2) литерал String объявляется с использованием двойных кавычек (").
Slaw 26.10.2018 06:59
0
2
325
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Конструктор Yamaha с аргументами

public productoYamaha (double pProducto, String nProducto)

.........

Таким образом, вам необходимо указать первый аргумент как double, а второй как String, а также аргумент String должен быть заключен в двойные кавычки ("empacador") вместо одинарного ('empacador')

Также есть проблема с оператором печати внутри main, который требует исправления.

public static void main(String[] args) { 
productoYamaha p1, p2; 
p1= new productoYamaha ();
// first argument should be a double and second should be string 
p2= new productoYamaha (20.00, "empacador"); 
p1.imprimir();
p2.imprimir(); 
//concat two arguments with '+' inside print statements 
System.out.println("El total a pagar es" +total_a_pagar);
//      TODO code application logic here
 }

Другие вопросы по теме