好的,所以我一直在网上搜索大约一个小时,但我还没有找到我的计算机科学课程的解决方案。所以,我有两个文件夹,比如说folder1和folder2,在那些文件夹里我有.java文件。在folder1中我有folder1.java文件,在folder2中我有folder2.java文件。
在folder2.java中我只有方法,所以它看起来像这样:
class folder2{
public static String ........
//here are all of the methods
}
在folder1.java中,我在folder2.java中执行了这些方法:
class folder1{
public static void main(String[] args){
executeMethodFromFolder2JavaFile();
}
}
我怎么能这样做?
答案 0 :(得分:1)
您正在关注的流程存在问题。这不应该是这么难。也许你正在遵循错误的教程或错误的原则。我借此机会一劳永逸地澄清这一点。
请注意,示例代码应该是示例性的。没有必要急速写东西来快速完成它。具有讽刺意味的是,当你这样做时,你最终会花更多的时间。
首先,您应该关注名称:类,方法,字段,变量和包的名称(花一些时间来表示每个人的意思)。这不是任何形式的诫命,只是方便。规则并不复杂,事实上非常简单:
Employee
,Student
,Fish
,Square
,City
,State
,Person
等。walk
,run
,draw
,read
,write
等。字段和变量名称的示例为color
,{ {1}},state
等。称为循环变量的变量应命名为ready
,i
,j
等。请注意,您看到的是违反这些内容的行为(例如,Java中唯一一个使类可执行的方法名称k
,但我们只是接受这种明显的异常而没有怨恨。)
现在,将它应用到您的案例中,让我们从两个类main
和Shape
开始。前者代表后者的形状,例如Painter
。没有必要立即开始使用包。
我将在以下示例中使用Unix语法:
draw
就是这样。编译Painter.java并运行它:
Shape.java
public class Shape {
public void draw() {
System.out.println("Shape#draw");
}
}
Painter.java
public class Painter {
public static void main(String[] args) {
Shape shape = new Shape();
shape.draw();
}
}
Painter.java javac
画家java
现在介绍这些包。让我们把Painter放在一个名为 actor 的包中,将Shape放在 thing 中。简单来说,包是文件系统上的文件夹。它们可以逻辑地将功能组合为模块,单元。
➜ /tmp javac Painter.java ➜ /tmp java Painter Shape#draw
请注意,我们在两个文件中都添加了➜ /tmp cat thing/Shape.java actor/Painter.java
package thing;
class Shape {
public void draw() {
System.out.println("Shape#draw");
}
}
package actor;
import thing.Shape; // need to import Shape from thing package now
class Painter {
public static void main(String[] args) {
Shape shape = new Shape();
shape.draw();
}
}
行。
package
的包。请注意,actor
足够聪明,可以找出Shape.java的位置(它现在位于当前文件夹的javac
子文件夹中)。thing
的包中,因此您必须告诉actor
运行它。 java
为什么很难跟上开始?当然,您应该快速学会使用一个好的IDE for Java。如果您要有效地使用Java进行任何编码,则必须使用IDE。