java笔试题---杂记

1.finally语句块一般都会执行,即便是在try中调用了return。但是如果在try中调用System.exit(),此时jvm已经停止,在此种情况下不会调用finally块。

2.实参经形参传入方法中,并在方法中修改形参值,int、String等类型的实参都不会改变值。当实参为对象(包括数组)时,不能改变实参的参考地址,但是可以改变实参的内容。

3.try、catch、finally三个语句块均不能单独使用;catch可以有多个,但是finally最多只能有一个;try、catch、finally三个代码块中变量的作用域为代码块内部,分别独立而不能相互访问。如果要在三个块中都可以访问,则需要将变量定义到这些块的外面;多个catch块时,只会匹配其中的一个,其他的catch不会被执行,并且匹配的顺序是按catch块的顺序自上到下。

4.当在方法中调用throw时,如果抛出的是非RuntimeException,必须在方法声明时throws或者使用try...catch。如果是RuntimeException可有可无。

5.记住一点:在构造子类时,一定会调用到父类的构造方法。所以父类要么有一个默认的无参数构造,这样Java会自动调用这个无参数的构造。如果父类没有无参数的构造,那么就要你自己在子类的构造中,通过super()的方式调用父类的构造。

6.Java程序中的起始类(指使用main方法能运行的类)名称必须与存放该类的文件名相同。起始类包含两种情况:1.以public开头的类;2.当文件中包含一个或多个类时,类名与文件名相同的类。

7.构造方法不能被重写!

8.switch能使用的类型有:jdk1.6之前的:等价于int的类型:int、short、char、byte,jdk1.7加入String。

9.对象相等则hashCode一定相等; hashCode相等对象未必相等。

10.静态内部类只能访问其外围类的静态成员,除此之外与非静态内部类没有任何区别。内部类中要想定义static方法,除非内部类也是static,否则不能定义static方法!内部类中要想定义一个static的变量,除非:内部类为static或者变量定义为static final的。内部类对包围它的外部类可见,外部类对内部类可见,包括各自的private属性。


发布了22 篇原创文章 · 获赞 1 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章