从不同的文件夹导入java文件?

时间:2016-05-13 14:46:26

标签: java

好的,所以我一直在网上搜索大约一个小时,但我还没有找到我的计算机科学课程的解决方案。所以,我有两个文件夹,比如说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();
    }
 }

我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

您正在关注的流程存在问题。这不应该是这么难。也许你正在遵循错误的教程或错误的原则。我借此机会一劳永逸地澄清这一点。

请注意,示例代码应该是示例性的。没有必要急速写东西来快速完成它。具有讽刺意味的是,当你这样做时,你最终会花更多的时间。

首先,您应该关注名称:类,方法,字段,变量和包的名称(花一些时间来表示每个人的意思)。这不是任何形式的诫命,只是方便。规则并不复杂,事实上非常简单:

  1. 命名类,就像使用大写(第一个字符大写)名称命名物理实体一样。毕竟,Java是一种主要促进面向对象思维的编程语言。在抽象出实体之后,您可以清楚而简单地命名它们。例如:EmployeeStudentFishSquareCityStatePerson等。
  2. 将行为和变量的方法命名为临时事物。这些名称应以小写字母开头。方法名称的示例包括walkrundrawreadwrite等。字段和变量名称的示例为color,{ {1}},state等。称为循环变量的变量应命名为readyij等。
  3. 请注意,您看到的是违反这些内容的行为(例如,Java中唯一一个使类可执行的方法名称k,但我们只是接受这种明显的异常而没有怨恨。)

    现在,将它应用到您的案例中,让我们从两个类mainShape开始。前者代表后者的形状,例如Painter。没有必要立即开始使用包。 我将在以下示例中使用Unix语法:

    1. 打开您的编辑器。创建一个名为Shape.java的文件并添加内容。
    2. 在您计算机上的同一文件夹中,创建另一个名为Painter.java的类。
    3. draw

      就是这样。编译Painter.java并运行它:

      1. 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
      2. javac画家
      3. java

        现在介绍这些包。让我们把Painter放在一个名为 actor 的包中,将Shape放在 thing 中。简单来说,包是文件系统上的文件夹。它们可以逻辑地将功能组合为模块,单元。

        1. mkdir thing actor
        2. mv Shape.java thing
        3. mv Painter.java actor
        4. ➜  /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(); } } 行。

          1. javac actor / Painter.java - 这是因为我们将Painter.java移动到名为package。请注意,actor足够聪明,可以找出Shape.java的位置(它现在位于当前文件夹的javac子文件夹中)。
          2. java actor.Painter - 由于该类现在位于名为thing的包中,因此您必须告诉actor运行它。
          3. java

            为什么很难跟上开始?当然,您应该快速学会使用一个好的IDE for Java。如果您要有效地使用Java进行任何编码,则必须使用IDE。