一个JAVA程序里如果没有public类那会怎么样?
解决方案 »
- 在帖子上看到了一个小程序,不解???
- 关于swing table单元信息获取
- 请问我用JNI技术出现这样的错误是因为什么呢?目录问题可以应该可以排除,因为我在每个目录都给他来一人DLL
- 在每天定时向oracle数据库中插入数据怎么做
- 各位大侠!请帮小弟看看这个问题,急啊!
- java.util.Calendar
- 通信公司招聘Java人才。。。
- reliable transfer over udp with java sourcecode(example)
- JAVA 中如何取得系统的当前日期和当前时间?(快)
- 有关抽象类和接口的编程错误
- 基于GAE的FLASH弹幕播放器
- 新手关于“this“的问题
哦?我看书上的还有老师讲的,说一个程序中至多有一个public类。。
主类就是你程序执行的入口!!!
最起码,也是我认为非常重要的作用,类的可见性变量。
源文件叫Test.javaclass T {
public static void main(String[] args) {
System.out.println("T");
}
}编译:javac Test.java
运行:java T
一切正常
一个源文件中如果一定要有public类,那么这个类的名字就必须与源文件的名字一致,仅此而已
一个源文件是一个编译单元
一个编译单元可以有且只能有一个public类
但是也可以没有public类
有public类时,public类必须与文件名同名
没有public类时文件名可以任意没有public类不代表不可以运行
同样可以java 类名
也可以在其它类中显式调用该类的main方法还是应该去试试的
也可以没有,一点关系也没有,但是运行的时候,要注意选择带main方法的那个类
一般main()函数位于这个类中,
想的太多了吧
我以前试过..
不过我是用applet的..没有public也可以运行呀
public void aa(){
System.out.println("11111111111");
} /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
}}
package com.test.test;class TTT { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TTest t = new TTest();
t.aa();
}}没有PUBLIC确实是可以的啊
程序执行时需要MAIN方法作为入口,可以不包含在PUBLIC类中。
java mainFile即可。
只要有该类有main函数存在。
为什么我java T就不行呢
我的版本是1.5的
实在不行就记住就行了
一个源文件中如果要有public类,那么只能有一个public类,并且这个public类的名字要与文件名一致
其实一个程序想怎么运行就怎么运行,可以有多个main
比如我在一个叫Test.java的文件中写入这段代码:public class Test {
public static void main(String[] args) throws Exception {
System.out.println("Heee");
T.main(args);//我还可以在一个类中调另一个类的main函数
}
}class T {
public static void main(String[] args) {
System.out.println("HHHHHH");
}
}编译:javac Test.java
运行:java Test(执行Test中的main函数)
java T(执行T中的main函数)
你还要注意还可以在一个类中调另一个类的main函数
想怎么玩就怎么玩,只要自己去动手了就行,不然大家说得再多也没用