java基础知识——I/O篇

    一、简介篇

    什么是java?java参考书

    二、命令篇

    java基础知识——命令篇

  三、I/O篇

  18 我怎么给java程序加启动参数,就像dir /p/w那样?

  答:还记得public static void main(String[] args)吗?这里的args就是你的启动参数。在运行时你输入java package1.class1 -arg1 -arg2,args中就会有两个String,一个是arg1,另一个是

arg2。

  19 我怎么从键盘输入一个int/double/字符串?

  答:java的I/O操作比C++要复杂一点。如果要从键盘输入,样例代码如下:BufferedReader cin = new BufferedReader( new InputStreamReader( System.in ) );String s = cin.readLine();

  这样你就获得了一个字符串,如果你需要数字的话再加上:int n = Integer.parseInt( s ); 或者 double d = Double.parseDouble( s );

  20 我怎么输出一个int/double/字符串?

  答:在程序开始写:

  PrintWriter cout = new PrintWriter( System.out );

  需要时写:

  cout.print(n); 或者cout.println("hello")等等。

  21 我发现有些书上直接用System.in和System.out输入输出,比你要简单得多。

  答:java使用unicode,是双字节。而System.in和System.out是单字节的stream。

  如果你要输入输出双字节文字比如中文,请使用作者的做法。

  22 我怎么从文件输入一个int/double/字符串?

  答:类似于从键盘输入,只不过换成BufferedReader fin = new BufferedReader( new FileReader(" myFileName " ) );

  PrintWriter fout = new PrintWriter( new FileWriter(" myFileName " ) );

  另外如果你还没下载API,请开始下载并阅读java.io包中的内容。

  23 我想读写文件的指定位置,该怎么办?

  答:你肯定没有认真看API。java.io.RandomAccessFile可以满足你的需要。

  24 怎么判断要读的文件已经到了尽头?

  答:你肯定没有认真看API。在Reaer的read方法中明确说明返回-1表示流的结尾。

  四、 关键字篇

  25 java里面怎么定义宏?

  答:java不支持宏,因为宏代换不能保证类型安全。

  如果你需要定义常量,可以将它定义为某个类的static final成员。参见26和30。

  26 java里面没法用const。

  答:你可以用final关键字。例如 final int m = 9。被声明为final的变量不能被再次赋值,final也可以用于声明方法或类,被声明为final的方法或类不能被继承。注意const是java的保留字以备

扩充。

  27 java里面也不能用goto。

  答:甚至在面向过程的语言中你也可以完全不用goto。请检查你的程序流程是否合理。

  如果你需要从多层循环中迅速跳出,java增强了(和C++相比)break和continue的功能。

  例如:

  outer :

  while( ... )

  {

  inner :

  for( ... )

  {

  ... break inner; ...

  ... continue outer; ...

  }

  }

  和const一样,goto也是java的保留字以备扩充。

  28 java里面能不能重载操作符?

  答:不能。String的+号是唯一一个内置的重载操作符。你可以通过定义接口和方法来实现类似功能。

  29 我new了一个对象,但是没法delete掉它。

  答:java有自动内存回收机制,即所谓Garbarge Collector。你再也不用担心指针错误了.

  30 我想知道为什么main方法必须被声明为public static?

  答:声明为public是为了这个方法可以被外部调用,详情见面向对象篇37。

  static是为了将某个成员变量/方法关联到类(class)而非实例(instance)。

  你不需要创建一个对象就可以直接使用这个类的static成员,在A类中调用B类的static成员可以使用B.staticMember的写法。

  注意一个类的static成员变量是唯一的,被所有该类对象所共享的。

by 雪洁 2011-05-16 09:14:44 2859 views
我来说几句

相关文章