Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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_Class_Oop_Command Line_Main - Fatal编程技术网

Java 如何创建公共类的新对象

Java 如何创建公共类的新对象,java,class,oop,command-line,main,Java,Class,Oop,Command Line,Main,我是一名Java新手,虽然我了解Python中的面向对象编程,但我目前在理解这个创建公共类的示例时遇到了问题,这些类可以组合在一起,也可以组合在不同的文件中,然后编译它们 public class Vehicle { int maxSpeed; int wheels; String color; double fuelCapacity; void horn() { System.out.println("Beep!"); } } class MyCla

我是一名Java新手,虽然我了解Python中的面向对象编程,但我目前在理解这个创建公共类的示例时遇到了问题,这些类可以组合在一起,也可以组合在不同的文件中,然后编译它们


public class Vehicle {
  int maxSpeed;
  int wheels;
  String color;
  double fuelCapacity;  

  void horn() {
    System.out.println("Beep!");
  }  
}
class MyClass {
  public static void main(String[ ] args) {
    Vehicle v1 = new Vehicle();
    Vehicle v2 = new Vehicle();
    v1.color = "red";
    v2.horn();
  }
}

上面的例子是在我目前正在学习的Sololearn上给出的,但它只在Sololearn java编译器中有效。其他编译器抛出错误

无法在车辆中找到静态main(字符串[])


找不到main方法

首先在不同的文件中分离这两个类,或者使Vehicle类嵌套在MyClass嵌套代码中---

将此文件代码另存为
MyClass.java

如果你想运行这段代码,你可以使用一些java编辑器,比如eclipse或Netbeans,或者你可以通过cmd运行这段代码,但是你应该在你的系统中安装JDK。想知道更多,你可以随时打电话给我。如果您能够成功运行此代码,请告诉我。将很乐意帮助您:)

首先在不同的文件中分离这两个类,或者使嵌套在MyClass中的Vehicle类看起来像这样---

将此文件代码另存为
MyClass.java

如果你想运行这段代码,你可以使用一些java编辑器,比如eclipse或Netbeans,或者你可以通过cmd运行这段代码,但是你应该在你的系统中安装JDK。想知道更多,你可以随时打电话给我。如果您能够成功运行此代码,请告诉我。将很乐意帮助您:)

如果您使用的是Java 11或更高版本,请确保您的文件名为MyClass.Java

在这种情况下,只需在shell中键入以下命令即可调用:

$ java MyClass.java

如果java版本小于11,则需要首先使用
javac

对其进行编译如果使用java 11或更高版本,请确保文件名为MyClass.java

在这种情况下,只需在shell中键入以下命令即可调用:

$ java MyClass.java


如果java版本小于11,那么您需要首先使用
javac

编译它。编译器应该给出一个正确的答案。我想你是想运行
Vehicle
类而不是
MyClass
你是如何运行你的程序的?它是在终端中还是在某个IDE中?在IDE中运行程序这不是编译器应该给出的错误。我想你是想运行
Vehicle
类而不是
MyClass
你是如何运行你的程序的?它是在终端中还是在某个IDE中?在IDE中运行程序将两个类分开我的意思是,制作一个包含两个文件的包,一个是vehicle.java,另一个是MyClass.java,这两个类都在各自的文件中,并将vehicle类从该包导入MyClass.java文件。很好地分离类是更好的方法,也是很好的编码方法。嵌套类工作得很好,但请提供关于其他方法的任何提示。在我的第一个评论中,我已经向您解释了分类和导入车辆分类。如果您对此有任何疑问,请点击我。是的,我看到了,但我花了一整天的时间在网上冲浪,但我还没有真正了解如何创建/导入用户定义的软件包。我甚至找不到一个明确的方法把两个班分开我是说,制作一个包含两个文件的包,一个是vehicle.java,另一个是MyClass.java,这两个类都在各自的文件中,并将vehicle类从该包导入MyClass.java文件。很好地分离类是更好的方法,也是很好的编码方法。嵌套类工作得很好,但请提供关于其他方法的任何提示。在我的第一个评论中,我已经向您解释了分类和导入车辆分类。如果您对此有任何疑问,请点击我。是的,我看到了,但我花了一整天的时间在网上冲浪,但我还没有真正了解如何创建/导入用户定义的软件包。我甚至找不到一个明确的方法来做到这一点。终端一直在说javac:notfound,那么你需要将java添加到你的路径中。看这里(这是相当旧的,但对于Windows10也是一样的)。完成后,
javac
将把java文件编译成类文件。要运行
javamyclass
中的类文件类型(不要在类名的末尾使用.class或.java)。终端会一直说javac:notfound,然后需要将java添加到路径中。看这里(这是相当旧的,但对于Windows10也是一样的)。完成后,
javac
将把java文件编译成类文件。要在
javamyclass
中运行类文件,请键入(不要在类名末尾使用.class或.java)。