首页 > 解决方案 > java main 方法无法编译,因为它找不到创建对象的符号

问题描述

自从我上大学第一年以来,我对 Java 比较陌生。目前我们在课堂上做 OOP,我有以下问题:

我正在创建一个“火车”,但是当我尝试编译它时,它给出了以下错误: https://i.gyazo.com/2d4f3ccc68f45419a9439ab9adb1a499.png[1]

这真的让我感到困惑,因为我试图在 Eclipse 的控制台中运行 main 方法并且它运行得很好。

我的货车班:

    package sheet08;



//a)
public class Waggon {
    private int SitzGesamt, SitzReserviert, SitzFrei ;
    private int Klasse;
    private String Doppelwagen;
    private int WCbesetzt, WCfrei , WCdefekt;
    private String WaggonHinten;





//b)
//Getter & Setter


public int getSitzGesamt() {
    return SitzGesamt;
}

public void setSitzGesamt(int sitzGesamt) {
    SitzGesamt = sitzGesamt;
}

public int getSitzReserviert() {
    return SitzReserviert;
}

public void setSitzReserviert(int sitzReserviert) {
    SitzReserviert = sitzReserviert;
}

public int getSitzFrei() {
    return SitzFrei;
}

public void setSitzFrei(int sitzFrei) {
    SitzFrei = sitzFrei;
}

public int getKlasse() {
    return Klasse;
}

public void setKlasse(int klasse) {
    Klasse = klasse;
}

public String getDoppelwagen() {
    return Doppelwagen;
}

public void setDoppelwagen(String doppelwagen) {
    Doppelwagen = doppelwagen;
}

public int getWCbesetzt() {
    return WCbesetzt;
}

public void setWCbesetzt(int wCbesetzt) {
    WCbesetzt = wCbesetzt;
}

public int getWCfrei() {
    return WCfrei;
}

public void setWCfrei(int wCfrei) {
    WCfrei = wCfrei;
}

public int getWCdefekt() {
    return WCdefekt;
}

public void setWCdefekt(int wCdefekt) {
    WCdefekt = wCdefekt;
}

public String getWaggonHinten() {
    return WaggonHinten;
}

public void setWaggonHinten(String waggonHinten) {
    WaggonHinten = waggonHinten;
}

//default Constructor
public Waggon() {

}
//Constructor
public Waggon(int sitzGesamt, int sitzReserviert, int sitzFrei, int klasse, String doppelwagen, int wCbesetzt,
        int wCfrei, int wCdefekt, String waggonHinten) {
    super();
    SitzGesamt = sitzGesamt;
    SitzReserviert = sitzReserviert;
    SitzFrei = sitzFrei;
    Klasse = klasse;
    Doppelwagen = doppelwagen;
    WCbesetzt = wCbesetzt;
    WCfrei = wCfrei;
    WCdefekt = wCdefekt;
    WaggonHinten = waggonHinten;
}

// e)
public String toString(){
    String strSitzGesamt = String.valueOf(SitzGesamt);
    String strSitzReserviert = String.valueOf(SitzReserviert);
    String strSitzFrei = String.valueOf(SitzFrei);
    String strKlasse = String.valueOf(Klasse);
    String strWCbesetzt = String.valueOf(WCbesetzt);
    String strWCfrei = String.valueOf(WCfrei);
    String strWCdefekt = String.valueOf(WCdefekt);

    return strSitzGesamt + "-" + strSitzReserviert + "-" + strSitzFrei + "-" + strKlasse + "-" + Doppelwagen + "-" + strWCbesetzt + "-" + 
            strWCfrei + "-" + strWCdefekt + WaggonHinten;

}


}

我的“火车”课:

 package sheet08;

    public class Train {

        int Baureihe;
        String Antriebsart;
        int PS;
        int Höchstgeschwindigkeit;
        int WaggonDahinter;




        //Getter&Setter
        public int getBaureihe() {
            return Baureihe;
        }
        public void setBaureihe(int baureihe) {
            Baureihe = baureihe; //this.baurihe = baureihe
        }
        public String getAntriebsart() {
            return Antriebsart;
        }
        public void setAntriebsart(String antriebsart) {
            Antriebsart = antriebsart;
        }
        public int getPS() {
            return PS;
        }
        public void setPS(int pS) {
            PS = pS;
        }
        public int getHöchstgeschwindigkeit() {
            return Höchstgeschwindigkeit;
        }
        public void setHöchstgeschwindigkeit(int höchstgeschwindigkeit) {
            Höchstgeschwindigkeit = höchstgeschwindigkeit;
        }


        public int getWaggonDahinter() {
            return WaggonDahinter;
        }
        public void setWaggonDahinter(int waggonDahinter) {
            WaggonDahinter = waggonDahinter;
        }


        //default Constructor
        public Train() {
        }


        //Constructor
        public Train(int baureihe, String antriebsart, int pS, int höchstgeschwindigkeit, int waggonDahinter) {
            super();
            Baureihe = baureihe;
            Antriebsart = antriebsart;
            PS = pS;
            Höchstgeschwindigkeit = höchstgeschwindigkeit;

        }

    //e)

        public String toString(){
            String strBaureihe = String.valueOf(Baureihe);
            String strPS = String.valueOf(PS);
            String strHöchstgeschwindigkeit = String.valueOf(Höchstgeschwindigkeit);

            return strBaureihe + "-" + Antriebsart + "-" + strPS + "-" + strHöchstgeschwindigkeit;
        }

    }

和主要方法本身:

package sheet08;

import java.util.Random;

public class Test {

    public static void main( String[] args ) {
        Random WCkaputt = new Random();
        int WCdefekt = WCkaputt.nextInt(100)+1;
        System.out.println("Die Toilette ist zu " + WCdefekt + " % kaputt");

        Train t1 = new Train (412, "elektrisch", 13500, 250, 1); 
        Waggon w1 = new Waggon(50, 24, 3, 1, "doppelstock", 0, 0, 0, "1 Waggon dahinter"); //keine Angabe über die WC-Anzahl
        Waggon w2 = new Waggon(100, 12, 64, 2, "doppelstock", 0, 0, 0, "1 Waggon dahinter");
        Waggon w3 = new Waggon(100, 32, 11, 2, "doppelstock", 0, 0, 0, "1 Waggon dahinter");
        Waggon w4 = new Waggon(50, 17, 3, 1, "doppelstock", 0, 0, 0, " kein Waggon dahinter");

        System.out.println(t1);
        System.out.println(w1);
        System.out.println(w2);
        System.out.println(w3);
        System.out.println(w4);

    //cannot find symbol Train & Waggon 
        //Variable als Train1 im typ train abspeichern



}
}

我编译了 wagon 和 train 类,那里没有错误,我根本无法弄清楚为什么我的主要方法找不到符号。我很感激任何提示,因为我从昨天开始就陷入了这个错误!

标签: java

解决方案


您忘记了包含 main 方法的类中的 import 语句。

import sheet08.Train;
import sheet08.Waggon;

推荐阅读