本文引用于:

http://uule.iteye.com/blog/762949

51、new File(File parent, String child)

Java代码  
  1. File home = new File(getCatalinaBase());
  2. File conf = new File(home, "conf");
  3. File properties = new File(conf, "catalina.properties");

parent下的目录或文件 的File对象

易错题:

1、

Java代码  
  1. int j = 0;
  2. j = j++;
  3. System.out.println(j);

没 见过此题的人,大部分人可能得到的结果是:1。 然而,运行的结果会令您彻底失望。这是什么原因呢?原来Java编译器处理后缀++或--时是这么处理的:java的编译器在遇到j++和j- -的时候会重新为变量运算分配一块内存空间,以存放原始的值,而在完成了赋值运算之后,将这块内存释放掉。即JAVA先将j的值保存到临时内存空间中,然 后处理++,即原来的j加1,此时原来的j变成1,然后再执行赋值,将内存空间中所存放的原来的值赋回给j,所以j仍然是0。C#和Java的结果是一样 的。

相反,C/C++不是这么处理的:C中是通过寄存器作中转先把j的值赋给它本身,再执行++的操作,这样结果就是1了。

2、

Java代码  
  1. String a = "abc";
  2. String b = "abc";
  3. System.out.println("====>"+ a==b ); //"+"的优先级比"=="高,实际比较的是"====>abc"与abc  false
  4. System.out.println("====>"+ (a==b) );                    //true

3、一眼能说出它的结果

Java代码  
  1. public class MainTest {
  2. public static void main(String[] args) {
  3. String s = null;
  4. s = s+"word";
  5. System.out.println("hello " +s);
  6. }
  7. }

结果:hello nullword

Java代码  
  1. String s = null;
  2. //s = s+"word";
  3. System.out.println("hello " +s);
  4. //结果:hello null

抽象类中可以有抽象方法和非抽象方法 !

构造方法可以被重载,但不可以被重写

数组没有 length() 这个方法,有 length 的属性。 String 有有 length() 这个方法。

Java代码  
  1. Scanner scanner = new Scanner(System.in);
  2. String temp = scanner.nextLine();
  3. System.out.println("temp=="+temp);

new String(name.getBytes("iso-8859-1"),"utf-8");

其他:

java类成员变量在没有赋值的时候会赋以默认值,其它局部变量是不能够享受这种待遇的。