刷新单独文件中的Java类
我需要一个关于将类从一个文件移动到两个文件的复习。我的示例代码位于一个名为“external\u class\u file\u main”的文件中。程序运行正常,代码如下所示:刷新单独文件中的Java类,java,class,Java,Class,我需要一个关于将类从一个文件移动到两个文件的复习。我的示例代码位于一个名为“external\u class\u file\u main”的文件中。程序运行正常,代码如下所示: Public class external_class_file_main { public static int get_a_random_number (int min, int max) { int n; n = (int)(Math.random() * (max - m
Public class external_class_file_main {
public static int get_a_random_number (int min, int max) {
int n;
n = (int)(Math.random() * (max - min +1)) + min;
return (n);
}
public static void main(String[] args) {
int r;
System.out.println("Program starting...");
r = get_a_random_number (1, 5);
System.out.println("random number = " + r);
System.out.println("Program ending...");
}
}
我将get_a_random_number类移动到一个名为“external_class_file”的单独文件中。执行此操作时,会出现以下错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method get_a_random_number(int, int) is undefined for the type
external_class_file_main
at external_class_file_main.main(external_class_file_main.java:20)
“外部类文件\u main”现在包含:
public class external_class_file_main {
public static void main(String[] args) {
int r;
System.out.println("Program starting...");
r = get_a_random_number (1, 5);
System.out.println("random number = " + r);
System.out.println("Program ending...");
}
}
public class external_class_file {
public static int get_a_random_number (int min, int max) {
int n;
n = (int)(Math.random() * (max - min +1)) + min;
return (n);
}
}
“外部类文件”现在包含:
public class external_class_file_main {
public static void main(String[] args) {
int r;
System.out.println("Program starting...");
r = get_a_random_number (1, 5);
System.out.println("random number = " + r);
System.out.println("Program ending...");
}
}
public class external_class_file {
public static int get_a_random_number (int min, int max) {
int n;
n = (int)(Math.random() * (max - min +1)) + min;
return (n);
}
}
您不再可以从外部类文件主类访问get_a_random_number方法。由于您需要的方法是静态的,因此您可以按如下方式直接引用它:
public static void main(String[] args) {
int r;
System.out.println("Program starting...");
r = external_class_file.get_a_random_number (1, 5);
System.out.println("random number = " + r);
System.out.println("Program ending...");
}
另外,如果您对方法和类使用适当的Java命名约定(例如,不使用下划线,以大写字母开头的类),您会发现编写代码和阅读问题的人会容易得多 您需要通过class
外部class\u文件
引用t获取随机数。例如:
int r;
System.out.println("Program starting...");
r = external_class_file.get_a_random_number (1, 5);
不过,您一定要坚持Java命名约定。这里是解决方案:
public class external_class_file_main {
public static void main(String[] args) {
int r;
System.out.println("Program starting...");
r = external_class_file.get_a_random_number (1, 5);
System.out.println("random number = " + r);
System.out.println("Program ending...");
}
}
但是,请查看Java命名约定。该方法是静态的,OP不需要创建外部类文件的实例来访问该方法;)