Java中两个class关系 一个.java文件中有两个类 那么这两个类是什么关系,和同在一个包中的两个类一样吗 求详细解释~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 当然同包了,你写这两个类的时候不是只写了一个package吗? package test;public class Test { public void helloWorld() { System.out.println("hello world"); }}class Test2 { public void helloWorld() { System.out.println("hello world"); }}上面是把两个类写在一个.JAVA文件中的你再看一下生成的.class文件,有两个,分别是Test.class Test2.class你再把.class文件反编译一下看看,反编译后的代码:Test.javapackage test;import java.io.PrintStream;public class Test{ public void helloWorld() { System.out.println("hello world"); }}Test2.javapackage test;import java.io.PrintStream;class Test2{ public void helloWorld() { System.out.println("hello world"); }}除了Test2不是public之外,应该和同一个包的两个.Java文件没什么区别,个人意见,如有错误请指教! 是同一个包中的,区别在于同一个文件中最多只能有一个public class ,并且public class的名字必须与文件的名字相同。 二楼说的对,在生成字节码文件.class的时候,是对每一个类分别生成一个字节码文件,所以他们是一样的 是同一个包中的,区别在于同一个文件中最多只能有一个public class ,并且public class的名字必须与文件的名字相同。 同在一个.java文件中的两个类一定同在一个包下,且其中只能有一个public类文件名与public类相同,而同一个包下在不同.java文件中的类是没有这种关系的,但可调用对方 当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗?当然同包了,你写这两个类的时候不是只写了一个package吗? 恩。在同一个包中关系一样的。区别在于同一个文件中最多只能有一个public class ,并且public class的名字必须与文件的名字相同。 在同一个包中,但只能有一个为public 是能有一个是Public的,所以也没什么意义。 但如果你写成内部类的话 就有两个.class文件了 同一个.java文件中,只能有一个public修饰的class 只有一個是public,可以在本包外訪問 定义类的时候有一个命名要求:类名称的每个单词的首字母都必须大写,例如:HelloWorldTest,而对于定义类也有两种形式:1、 使用public class定义:文件名称必须和类名称保持一致,在一个*.java文件之中只能定义一个public class;2、 使用class定义:文件名称可以和类名称不一致,但是生成之后的*.class文件是由class定义的类名称,在一个*.java文件之中可以同时定义多个class类,而且在编译的时候会自动的生成不同的*.class文件。同一包中的两个类是可以相互访问的! 内部类是写在类里面的类,如,public class OuterClass {...private class innerClass{.. }..}如果不写在类里面,public class c1{}class c2{}这样子,就是同包的类,不过c2不可以是public的,.一个文件只能一个public class且和文件名相同. 那当然在同一个包中了,第一行写的package的包中,或者为默认包中…… 这两个是否只有第一个中能写main函数? 用swing如何实现DOS下的光标闪动效果 JAVA 在上Canvas上输入"你好"两个字.. 为什么接口中的域都隐含为static和final? 关于测试的问题(100分) 怎样用jsp读写客户端机器上的IC卡数据? 谁有登录验证数据库用户密码的代码? 请问:如何查看栈内存和堆内存中的数据??就是如何通过某种方法看看这个数据是在堆中还是栈中? 在Eclipse中如何修改web.xml文件 一台机器上,可以同时存在两个不同的JDK版本吗? 深入分析Java Web中的中文编码问题 数组的倒序输出?麻烦看看为什么不行?谢谢 jxl读取满足条件的单元格,并返回单元格的位置
package test;public class Test {
public void helloWorld() {
System.out.println("hello world");
}
}class Test2 {
public void helloWorld() {
System.out.println("hello world");
}
}
上面是把两个类写在一个.JAVA文件中的你再看一下生成的.class文件,有两个,分别是Test.class Test2.class你再把.class文件反编译一下看看,反编译后的代码:
Test.javapackage test;import java.io.PrintStream;public class Test
{
public void helloWorld()
{
System.out.println("hello world");
}
}
Test2.javapackage test;import java.io.PrintStream;class Test2
{
public void helloWorld()
{
System.out.println("hello world");
}
}除了Test2不是public之外,应该和同一个包的两个.Java文件没什么区别,个人意见,如有错误请指教!
2、 使用class定义:文件名称可以和类名称不一致,但是生成之后的*.class文件是由class定义的类名称,在一个*.java文件之中可以同时定义多个class类,而且在编译的时候会自动的生成不同的*.class文件。同一包中的两个类是可以相互访问的!
...
private class innerClass{
..
}
..
}
如果不写在类里面,
public class c1{}class c2{}这样子,就是同包的类,不过c2不可以是public的,.一个文件只能一个public class且和文件名相同.