在java中,我们创建一个java文件,该文件应与下面的类名匹配。 但是,如果我想在单个文件中有多个类,而在其他java文件中使用main方法有其他类。 我将如何编译第一个文件,以便使用main方法的类可以使用该代码。
//File 1 A.java
package pack1;
public class A
{
//code of A
}
public class B
{
//code of B
}
//end of file A.java
//File 2 C.java
import pack1.*;
class C extends A
{
public static void main (String arg[])
{
A obj = new A();
}
}
如果我对这个假设的代码情况我的假设是错误的,请纠正我。
答案 0 :(得分:1)
是的,你可以编译一个java文件,只要它只有1个公共文件 类/枚举/接口。
文件名应与public class / enum / interface名称相同。
在第一个文件中有两个公共类,这是错误的。
答案 1 :(得分:1)
我理解你想要的东西。是不可能的。你不能在一个文件中声明两个公共类,但你可以将calss声明为class。像这样:
//File 1 A.java
package pack1;
public class A
{
//Code of A
public class B
{
//Code of B
}
}
//end of file A.java
//File 2 C.java
import pack1.*;
class C extends A
{
public static void main (String arg[])
{
A objA = new A();
// If class C extends A
B objB = new B();
// else
A.B objAB = new A.B();
}
}
答案 2 :(得分:0)
文件中只能有一个Public class / enum / interface,文件名必须与Public class / enum / interface相同。 它不会给你任何错误。
答案 3 :(得分:0)
是的,这是可能的。
看看继承如何与此Link中的示例一起使用,尤其是“继承示例”
只需确保文件名正好是类的名称,扩展名为.java。例如,如果Java文件中的公共类称为“A”,那么您的文件名应为“A.java”。