- 刷题的目的是为了发现已知知识的薄弱点,不是为了学新知识,学新知识应该系统的去刷书和视频
public static void main(String[] args) { int k = f_test(); System.out.println(k); } public static int f_test(){ int a = 0; try{ a = 1; return a; } finally{ System.out.println("It is in final chunk."); a = 2; return a; } } 输出: It is in final chunk. 2 若是将 return a; 注释掉,将输出 It is in final chunk. 1
方法调用时,会建立栈帧在栈中,调用完是程序自动出栈释放,而不是gc释放
public class Test { public void add( int x,int y,int z){} } 正确答案: B A. public int add(int x,int y,float z){return 0;} B. public int add(int x,int y,int z){return 0;} C. public void add(int x,int y){} D. 以上都不是
重载、重写区别java
byte b1=1,b2=2,b3,b6,b8; final byte b4=4,b5=6,b7; b3=(b1+b2); /*语句1*/ b6=b4+b5; /*语句2*/ b8=(b1+b4); /*语句3*/ b7=(b2+b5); /*语句4*/ System.out.println(b3+b6);
final知识点脑图程序员
1、关于final的重要知识点; 一、final关键字能够用于成员变量、本地变量、方法以及类。 二、 final成员变量必须在声明的时候初始化或者在构造器中初始化,不然就会报编译错误。 三、 你不可以对final变量再次赋值。 四、 本地变量必须在声明时赋值。 五、 在匿名类中全部变量都必须是final变量。 六、 final方法不能被重写。 七、 final类不能被继承。 八、 没有在声明时初始化final变量的称为空白final变量(blank final variable),它们必须在构造器中初始化,或者调用this()初始化。不这么作的话,编译器会报错“final变量(变量名)须要进行初始化”。 2、数据类型转换 当使用 +、-、*、/、%、运算操做是,遵循以下规则: 只要两个操做数中有一个是double类型的,另外一个将会被转换成double类型,而且结果也是double类型,若是两个操做数中有一个是float类型的,另外一个将会被转换为float类型,而且结果也是float类型,若是两个操做数中有一个是long类型的,另外一个将会被转换成long类型,而且结果也是long类型,不然(操做数为:byte、short、int 、char),两个数都会被转换成int类型,而且结果也是int类型。 语句1错误:b3=(b1+b2);自动转为int,因此正确写法为b3=(byte)(b1+b2);或者将b3定义为int; 语句2正确:b6=b4+b5;b四、b5为final类型,不会自动提高,因此和的类型视左边变量类型而定,即b6能够是任意数值类型; 语句3错误:b8=(b1+b4);虽然b4不会自动提高,但b1仍会自动提高,因此结果须要强转,b8=(byte)(b1+b4); 语句 4: (b2 + b5) 结果仍然转换为int , 因此语句4错误。
A. 垃圾回收 B. 虚拟机 C. 代码安全 D. 多线程
选项A,Java语言中,垃圾回收机制对系统中不使用的内存进行回收,从而使程序员从繁忙的内存管理中解放出来。 选项B,Java编写好的程序首先由编译器转换为标准字节代码,而后由虚拟机执行。虚拟机把字节代码程序与各操做系统和硬件分开,使Java程序独立于平台。 选项C,Java的代码安全检测体如今多个层次上,在编译层、解释层、平台层分别做不一样的安全检查。 选项D,多线程是Java程序的并发机制,它能同步共享数、处理不一样的事件。
A. wait()方法属于Object类,sleep()属于Thread类 B. 调用wait()方法的时候,线程会放弃对象锁 C. 调用sleep()方法的过程当中,线程不会释放对象锁 D. sleep()方法致使了程序暂停执行指定的时间,让出cpu给其余线程
public class Test{ public static class innerClass{ public static void prin(){ System.out.println("innerClass"); } } public static void main(String[] args) { Test.innerClass.prin(); System.out.println("HelloWorld"); } } 题目的意思是: 除去扩展名.java的部分,包含在java文件里的Java里的公共类必须与文件的名字相同。 可是公共的内部类是不须要和文件的名字相同的。
class Base{ public Base(String s){ System.out.print("B"); } } public class Derived extends Base{ public Derived (String s) { System.out.print("D"); } public static void main(String[] args){ new Derived("C"); } }
子类构造方法在调用时必须先调用父类的,因为父类没有无参构造,必须在子类中显式调用,修改子类构造方法以下便可: public Derived(String s){ super("s"); System.out.print("D"); }