Java - 创建一个包以成功运行代码

时间:2015-02-18 15:54:14

标签: java packages .class-file

我最近开始使用在线教程系列学习Java。该网站提供在线Java编辑器和解释器,因为他们不希望观众需要安装任何程序。但是,我想跟随Sublime Text 3。

我使用正确的语法创建了一个基本语句的小测试文件(.java),除了我没有设置它的包。当我运行该文件时(在Sublime的Java解释器中),当然会出现package语句应该出错的错误。

教程系列没有谈论任何包。我查看过很多资源,但是他们告诉我一个包只是一个相关类的目录,以及如何使用带有javac的Windows命令提示符为文件创建一个包,我没有。

我知道包是相关类/类文件的文件夹和目录,但是:

  • 如何为我的班级文件设置包?
  • 如果我只有一个类文件,是否需要包?我会假设错误发生在package语句的位置。

修改代码:

package test;

public class TestFile

{

    public static void main(String [] args)

    {

    //Declaring variables
    byte a = 64;
    short b = -385;
    int c = 100000;
    long d = 2000000;

    float e = 16.5;
    double f = 121.654;

    boolean g = true;

    char h = 'H';
    String i = "Some string.";

    String [] j = {"Some string.", "Another string.", "Yet another string."};

    //Printing
    System.out.println(i);
    System.out.println("String i = " + i);

    //If/ else if/ else construction
    if (i.length() > 4)

    {
    System.out.println("String is longer than four characters.");
    }

    else if (i.length() == 4)

    {
    System.out.println("String is exactly four characters long.");
    }

    else

    {
    System.out.println("String is shorter than four characters.");
    }


    }
}

错误:

  File "C:\Users\Owner\Desktop\Code\Java\Test.java", line 1
    package test;
               ^
SyntaxError: invalid syntax
[Finished in 0.1s with exit code 1]

2 个答案:

答案 0 :(得分:1)

正在测试TestFile.java(创建文件夹C:\Users\Owner\Desktop\Code\Java\test

  

注意:不需要使用它仅用于代码的包名称   分离,即在一个包中具有类似的代码

答案 1 :(得分:1)

包不仅仅是一个文件夹。这是Java的一个基本方面。 但是正如你所提到的,如果你只有一个类,它几乎是无关紧要的,在这种情况下,可以从类中删除包声明(使用'default'包,这称为)。

如果你声明了包,那么你必须告诉Javac相对于基本(默认)包在哪里查找文件。

See here for example

将它放在c:\ code(将其命名为Test.java)

public class Test {
    public static void main(String args[]) {
        System.out.println("hello");
    }
}

这样做:

c:
cd\
cd code
javac Test.java
java Test
hello