如何将一个java文件包含到另一个java文件中?
例如:
如果我有2个java文件,则一个名为Person.java
,一个名为Student.java
。如何将Person.java
添加到Student.java
中,以便我可以在Person.java
Student.java
扩展该课程
答案 0 :(得分:60)
只需将两个文件放在同一目录中即可。这是一个例子:
Person.java
public class Person {
public String name;
public Person(String name) {
this.name = name;
}
public String toString() {
return name;
}
}
Student.java
public class Student extends Person {
public String somethingnew;
public Student(String name) {
super(name);
somethingnew = "surprise!";
}
public String toString() {
return super.toString() + "\t" + somethingnew;
}
public static void main(String[] args) {
Person you = new Person("foo");
Student me = new Student("boo");
System.out.println("Your name is " + you);
System.out.println("My name is " + me);
}
}
运行学生(因为它具有主要功能)可以产生预期的结果:
Your name is foo
My name is boo surprise!
答案 1 :(得分:25)
所有解释中缺少的是Java具有类名=文件名的严格规则。意思是如果你有一个类“Person”,则必须在名为“Person.java”的文件中。因此,如果一个类尝试访问“Person”,则不需要文件名,因为它必须是“Person.java”。
来自C / C ++,我有完全相同的问题。答案是创建一个新类(在一个匹配类名的新文件中)并创建一个公共字符串。这将是您的“标题”文件。然后使用“extends”关键字在主文件中使用它。
这是你的答案:
创建一个名为Include.java的文件。在此文件中,添加以下内容:
public class Include {
public static String MyLongString= "abcdef";
}
创建另一个文件,例如User.java。在此文件中,输入:
import java.io.*;
public class User extends Include {
System.out.println(Include.MyLongString);
}
答案 2 :(得分:19)
Java不使用包含C的方式。相反,java使用一个名为classpath的概念,这是一个包含java类的资源列表。 JVM可以按名称访问类路径上的任何类,因此如果您可以通过声明它们来扩展类并引用类型。包含语句java的关闭事物是'import'。因为类被分解为foo.bar.Baz这样的命名空间,如果你在qux包中并且想要使用Baz类而不必使用它的全名foo.bar.Baz,那么你需要使用你的java文件开头的import语句如下:
import foo.bar.Baz
答案 3 :(得分:3)
你没有。
如果您想将Person扩展为Student,请执行以下操作:
public class Student extends Person
{
}
确保在编译两个类时,可以找到另一个类。
您使用的是什么IDE?