JAVA 高手再请进!

snoopytnc 2003-02-09 10:30:15
import java.io.* ;

public class MainT
{
static int i = 0;

public static void main(String[] args)
throws IOException
{
i++ ;
RandomAccessFile rf = new RandomAccessFile("data"+i+".txt","rw");
String str = "MainT.main()";
System.out.println(str);
rf.writeBytes(str);

MainT.main(null) ;
}
}
...全文
23 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
noblame 2003-02-09
  • 打赏
  • 举报
回复
try {
mainT.main();
........
} catch (IOException e) {
..............
}
nirvana_hg 2003-02-09
  • 打赏
  • 举报
回复
的确是死循环。你愿意测试也行。不会让你机器崩溃的。只需要按CTRL+C就行了 。
nako_ruru 2003-02-09
  • 打赏
  • 举报
回复
我猜想是个死循环。但我还没测试
nirvana_hg 2003-02-09
  • 打赏
  • 举报
回复
唉……之所以需要抛出异常并不是为了少写个try
是因为RandomAccessFile啊。
java_alias 2003-02-09
  • 打赏
  • 举报
回复
可是楼主到底要干什么啊???
takecare 2003-02-09
  • 打赏
  • 举报
回复
to: jcq(疯子弟)
说的是,哈哈!
jcq 2003-02-09
  • 打赏
  • 举报
回复
用throw exception 也是没有错的,这样,在main里的exception就可以不需要进行try了。
takecare 2003-02-09
  • 打赏
  • 举报
回复
to:noblame(不嗔)
一般情况下你是如何调用main函数的?
noblame 2003-02-09
  • 打赏
  • 举报
回复
这表示你在调用此方法的时候必须用try...catch捕捉并处理异常
nirvana_hg 2003-02-09
  • 打赏
  • 举报
回复
该程序适合快速建立大量无用TXT文件。^^
至于为什么需要throw Exception takecare(大厅)想必能理解。
但我也不太明白楼主要问的东西。
takecare 2003-02-09
  • 打赏
  • 举报
回复
main为什么还要throw exception呢?
iamqqmyheart 2003-02-09
  • 打赏
  • 举报
回复
你的目的?
snoopytnc 2003-02-09
  • 打赏
  • 举报
回复
maybe it's the reason.
pentax 2003-02-09
  • 打赏
  • 举报
回复
是堆栈溢出。

Exception in thread "main" java.lang.StackOverflowError
at java.io.FileOutputStream.write(FileOutputStream.ja
at java.io.BufferedOutputStream.flushBuffer(BufferedO
)
at java.io.BufferedOutputStream.flush(BufferedOutputS
at java.io.PrintStream.write(PrintStream.java:260)
at sun.nio.cs.StreamEncoder$ConverterSE.implFlushBuff
va:234)
at sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder
at java.io.OutputStreamWriter.flushBuffer(OutputStrea
at java.io.PrintStream.write(PrintStream.java:305)
at java.io.PrintStream.print(PrintStream.java:448)
at java.io.PrintStream.println(PrintStream.java:585)
pentax 2003-02-09
  • 打赏
  • 举报
回复
rf没有关闭,估计是内存收集的问题,因为每隔一段时间要暂停一下。
import java.io.* ;

public class MainT
{
static long i = 0;
static RandomAccessFile rf = null;

public static void main(String[] args)

{
try{
i++ ;
rf = new RandomAccessFile("data"+i+".txt","rw");
String str = "MainT.main()";
System.out.println(str+i);
rf.writeBytes(str);
rf.close();
MainT.main(null) ;
}
catch(Exception exp){System.out.println(exp.toString());}
}
}
noblame 2003-02-09
  • 打赏
  • 举报
回复
如果在声明方法的时候用了throws IOException修饰,如:
“public static void main(String[] args) throws IOException”
那么在引用此方法时必须用try...catch,否则编译将不能通过。
snoopytnc 2003-02-09
  • 打赏
  • 举报
回复
这不是一个死循环,程序执行总共生成2036个文件,
也就是说执行了2036次,但我不知道为什么会这样,
这是不是涉及到stack.???,请教高手!!
xycleo 2003-02-09
  • 打赏
  • 举报
回复
我不明白楼上takecare(大厅) 兄弟的说法??

谢谢!!大家共同进步!
xycleo 2003-02-09
  • 打赏
  • 举报
回复
如果用到IO类!有没有用try catch,是要throw exception的!!

可以不要吗???

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧