Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从主类调用类?_Java_Object_Vector_Constructor - Fatal编程技术网

Java 如何从主类调用类?

Java 如何从主类调用类?,java,object,vector,constructor,Java,Object,Vector,Constructor,定义一个类,其字段名称为String、age int、gender char:M/F、weight int 定义具有字段Passenger[]Passentials的TrainCoach类 定义类序列及其函数。班列有场向量教练。 给定一个向量作为输入,创建对象序列,其中每个字符串[]与上面作为输入提供给TrainCoach的字符串相似 我在调用main类中Train类的函数时遇到问题?如何调用这些方法 乘客等级: 列车车厢等级: 列车等级: 您提供的代码有几个问题 您的乘客舱没有包裹声明,但其他

定义一个类,其字段名称为String、age int、gender char:M/F、weight int

定义具有字段Passenger[]Passentials的TrainCoach类

定义类序列及其函数。班列有场向量教练。 给定一个向量作为输入,创建对象序列,其中每个字符串[]与上面作为输入提供给TrainCoach的字符串相似

我在调用main类中Train类的函数时遇到问题?如何调用这些方法

乘客等级:

列车车厢等级:

列车等级:


您提供的代码有几个问题

您的乘客舱没有包裹声明,但其他舱位于包裹乘客舱中。因此,引用Passenger的类实际上不应该编译。也许您只是在将代码复制/粘贴到stackoverflow时忘记了package语句?无论如何,要解决这个问题,请确保乘客的包裹与其他舱位相同

通常,您也可以通过在引用它的其他类中导入Passenger类来解决这个问题,但是在没有包的情况下无法导入类,因此您需要该包语句

一个类和一个包的名称相同,这很让人困惑。您至少应该用小写字母“p”命名包裹乘客,用大写字母“p”命名班级乘客。这是普通的Java代码标准

我不太清楚你到底想做什么,但在我看来,你是想执行乘客舱;类似于java乘客。这将失败,因为在乘客类中没有主方法。无论使用哪个类作为入口点,该类都需要具有以下签名的main方法:

public static void main(String[] args)
另外,请记住,当类获得包名时,在执行时需要包含包名;i、 e类似于java passenger.passenger


希望这对您有所帮助。

您提供的代码有几个问题

您的乘客舱没有包裹声明,但其他舱位于包裹乘客舱中。因此,引用Passenger的类实际上不应该编译。也许您只是在将代码复制/粘贴到stackoverflow时忘记了package语句?无论如何,要解决这个问题,请确保乘客的包裹与其他舱位相同

通常,您也可以通过在引用它的其他类中导入Passenger类来解决这个问题,但是在没有包的情况下无法导入类,因此您需要该包语句

一个类和一个包的名称相同,这很让人困惑。您至少应该用小写字母“p”命名包裹乘客,用大写字母“p”命名班级乘客。这是普通的Java代码标准

我不太清楚你到底想做什么,但在我看来,你是想执行乘客舱;类似于java乘客。这将失败,因为在乘客类中没有主方法。无论使用哪个类作为入口点,该类都需要具有以下签名的main方法:

public static void main(String[] args)
另外,请记住,当类获得包名时,在执行时需要包含包名;i、 e类似于java passenger.passenger


希望这对您有所帮助。

您能写下错误消息吗?!请准确指出哪条线路出现故障以及出现了什么错误?错误无法找到或装载主舱乘客。。。我无法将此链接到主类。您尝试在哪个类中创建Train对象?你犯了什么错误?你想处决乘客吗?如果是这样,您需要声明一个静态MainString[]args方法。您可以写入错误消息吗?!请准确指出哪条线路出现故障以及出现了什么错误?错误无法找到或装载主舱乘客。。。我无法将此链接到主类。您尝试在哪个类中创建Train对象?你犯了什么错误?你想处决乘客吗?如果是这样,则需要声明一个静态MainString[]args方法。
package Passenger;

import java.util.Vector;

public class Train{

    Vector<TrainCoach>coaches;

    public Train(){}
    public Train(Vector<String[]> data){
        for(int i=0;i<data.size();i++){
            coaches.addElement(new TrainCoach(data.elementAt(i)));
        }
        this.coaches=coaches;
    }
    public int numberOfPassengers(){
        int numOfPassengersInTrain = 0;
        for(int i = 0; i < coaches.size(); i++){
                numOfPassengersInTrain += this.coaches.elementAt(i).numberOfPassengers();
        }
        return(numOfPassengersInTrain);
    }
}
public static void main(String[] args)