一个.java文件中能有多个类吗?
一个.java文件中能包含多个类嘛?这些类有什么区别,他们的属性呢?哪个类名与文件名相同呢?main方法写在哪个类文件中呢?main方法可以有多个吗,它们的属性呢?还有内部类呢? --------------------编程问答-------------------- 学习java一段时间了,但是这些问题很困惑?谢谢大家讨论解答…… --------------------编程问答-------------------- 可以限制:
一个文件中只能有一个public类
并且此public类必须与文件名相同 --------------------编程问答--------------------
+1 --------------------编程问答-------------------- 必须可以! --------------------编程问答-------------------- 可以。但是只能有一个public --------------------编程问答-------------------- http://zhidao.baidu.com/question/274423418.html --------------------编程问答-------------------- 可以有多个,但Public类的类名必须跟文件名相同。
这些类跟写在多个文件中没什么区别。
属性相互不冲突。
任何一个都可以有main方法。你甚至可以在一个main方法中调用另外一个类的main方法。
... ... --------------------编程问答-------------------- 可以有,但是只能有一个public的类
其他的你就只能定义class而已 --------------------编程问答-------------------- 比如说:
class A--------------------编程问答-------------------- 类可以很多
{
...
}
class B
{
...
}
//只要一个main函数就OK
public class C {//保存C.java 文件 因为类C 下面有个main 函数,所以文件名C.java
public static void main(String []args) {
...
}
}
public类只有一个 且必须以文件名相同 main方法也在这个类中 --------------------编程问答--------------------
A.java--------------------编程问答-------------------- 不建议这么做。
class B{
}
public class A extends B{
public void a(){
new Thread(){
public void run(){
System.out.println("This is a inner anonymous class of thread.");
}
}.start();
}
public static void main(String[] a){
new A().a();
}
}
万一哪一天不小心定义了一个同名的类,编译时会覆盖掉另一个,出现一些莫名其妙的错误。 --------------------编程问答--------------------
+1 一个.java文件里面可以有多个类,但是只能有一个以public修饰的类,且使用public修饰的类的类名必须与该.java文件的文件名相同。明白了不? --------------------编程问答-------------------- 你说的就是内部类吧
可以啊类里面包含类
只是调用不一样
--------------------编程问答-------------------- 楼主如果是刚入行的话,建议把JAVA的基础多看看, --------------------编程问答--------------------
正解 --------------------编程问答-------------------- --------------------编程问答--------------------
//保存C.java 文件 因为类C 下面有个main 函数,所以文件名C.java
这句不对吧,因为类C为public类 所以文件名为 c.java
还有像7L说的:
可以有多个,但Public类的类名必须跟文件名相同。
这些类跟写在多个文件中没什么区别。
属性相互不冲突。
任何一个都可以有main方法。你甚至可以在一个main方法中调用另外一个类的main方法。《java编程思想》上有类似的写法。
--------------------编程问答-------------------- 想想你怎么开始写第一个java程序的,就知道哪个类名与文件名相同了
可以有其他类(如 class ClassName(){}),就是不能再以public class这样声明,这样的声明只能有一个
main方法是程序入口,每一个类都只能有一个入口,这里的每一个类包括了public class ClassName(){}和其内部类class ClassName(){}
至于说属性,属性是属于一个类的,所以他之间不会有什么影响的
楼主,清楚了吗?
好,就酱紫
--------------------编程问答-------------------- 可以,但是public的类只能有一个,main函数也只能有一个,内部类只要符合定义就可以了,没有数目限制 --------------------编程问答-------------------- 可以,但是只有一个类是用public修饰,并且要用这个类的名称命名这个java文件,如:
public class Test{}
class Test1{}
class Test2{}
然后:以Test.java命名 --------------------编程问答--------------------
+1 --------------------编程问答-------------------- 2#正解,9#的见解有点问题。
即在一个java文件中,必须有一个跟文件名相同的class,可以有多个class。
在一个java文件中,只能有一个public修饰的class(不包括内部类),并且这个class的名称跟文件名相同。
对于有main函数的class,不一定是主class,即与文件名相同的public类
例:
public class MainDemo {--------------------编程问答-------------------- 可以,但是只有一个main方法,通过main方法来调用。 --------------------编程问答-------------------- 可以有多个,建议不要这样写,不便于代码维护 --------------------编程问答-------------------- 编译后编译器会将class分开,如果匿名会加个$1,$2表示
// public类入口
public static void main(String[] args) {
System.out.println("zhixing public");
}
public static class aa {
// 内部类入口,通过java
public static void main(String[] args) {
System.out.println("zhixing nei bu lei");
}
}
}
// 其它的非public入口
class bb {
public static void main(String[] args) {
System.out.println("zhixing bb");
}
}
例如A$1.class,A$2.class --------------------编程问答-------------------- 可以的,不过一个.java文件里的类最多只有一个public --------------------编程问答-------------------- 一个.java文件中可有多个类,但有以下几点需要注意:
1.一个.java文件中可有多个类,但只能有一个public修饰的类;
2.如果该文件中存在主方法,则主方法一定在与文件名相同的类中;
3.用public修饰的类名与文件名相同。 --------------------编程问答-------------------- 可以有多个类,只能有一个是public的,而且必须以.java文件相配.
补充:Java , Web 开发