java复习练习题
- 格式:doc
- 大小:89.50 KB
- 文档页数:15
Java考试复习题JAVA程序设计练习一、填空题1、目前Java运行平台主要分为下列3个版本是Java se ,Java ee ,Java me 。
2、SDK平台提供的Java编译器是javac.exe 和Java解释器java.exe 位于Java安装目录的bin 文件夹中。
3、Java运行环境JRE由Java虚拟机、Java的核心类以及一些支持文件组成。
4、一个Java应用程序必须有一个称为主类的类,该类含有public static void main (String args[ ])方法。
5、在源文件的命名中如果源文件中有多个类,那么只能有一个类是public类;如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是java;6、一个Java Applet源文件不再需要main方法,但必须有且只有一个类扩展了Applet类,我们把这个类称作Java Applet源文件的主类。
7、类是组成Java程序的基本要素。
类封装了一类对象的状态和方法。
8、创建一个对象包括对象的声明和为对象分配成员变量两个步骤,对象的声明的一般格式为:类的名字对象名字;使用new运算符和类的构造方法为声明的对象分配成员变量9、用关键字static修饰的成员变量称作静态变量或类变量,类变量不仅可以通过某个对象访问也可以直接通过类名访问。
10、一个类中的方法可以互相调用:实例方法可以调用该类中实例方法或类方法;类方法只能调用该类的类方法,不能调用实例方法。
11、实例方法可以操作实例变量或类变量;而类方法只能操作类变量不能操作实例变量。
12、this关键字出现在类的构造方法中,代表使用该构造方法所创建的对象;this 关键字出现在类的实例方法中,代表使用该方法的当前对象。
13、成员变量在整个类内有效,局部变量仅在方法内有效,如果在方法内部局部变量的名字与成员变量的名字相同,则成员变量被隐藏,此时若要使用成员变量,格式为:this.成员变量。
●1、JFrame类的对象定义了一个()。
A、框架B、面板C、按钮D、标签●2、JLabel类的对象定义了一个()A、框架B、面板C、按钮D、标签●3、每一个使用Swing GUI的应用程序都必须包含至少一个顶层Swing容器组件,下面哪个不是顶层容器()A、JFrameB、JPanelC、JAppletD、JDialog●4、在往JPanel上添加组件时,默认的布局管理器为()JFrame默认的布局管理器为()A、GridLayoutB、FlowLayoutC、CardLayoutD、BorderLayout●5、哪一种布局管理器是从上到下、从左到右安排组件,当移动到下一行时是居中的?选择一个正确答案()A、BorderLaputB、FlowLayoutC、GridLayoutD、CardLayout●6、下面一行代码的作用为()。
JTextField tf=new JtexField(30)A、代码不合法。
在JTexField中,没有这样的构造方法。
B、创建了一个30行的JTexField对象,但未进行初始化,它是空的。
C、创建了一个30列的JTexField对象,但未进行初始化,它是空的。
D、创建了一个有30行文本的JTexField对象。
E、创建了一个有30列文本的JTexField对象。
●7、如何在一个容器的底部放3个组件?选择一个正确的答案()。
A、设置容器的布局管理器为BorderLayout,并添加每个组件到容器的南部。
B、设置容器的布局管理器为FlowLayout,并添加每个组件到容器C、设置容器的布局管理器为BorderLayout,并添加每个组件到使用FlowLayout 的另一容器,然后将该容器添加到第一个容器的南部。
D、不使用布局管理器,将每个组件添加到容器。
●8、Java的事件处理需要导入的软件包为()A、java.ioB、java.awt.eventC、java.awtD、●9、接口ActionListener中处理单击事件的方法是()A、mousePressed (MouseEvent e)B、mouseEntered(MouseEvent e)C、actionPerformed(ActionEvent e)D、keyPressed (MouseEvent e)●10、当单击按钮或在单行文本框中按回车键时,如想进行事件处理,需使用以下哪个监听器接口()A、FocusListenerB、KeyListenerC、MouseListenerD、ActionListener●1、Java图形界面编程大多使用java.awt包及包所提供的界面库来实现。
类的继承习题一、选择题1. Java语言的类间的继承关系是( B )。
A) 多重的 B) 单重的 C) 线程的 D) 不能继承2. 以下关于Java语言继承的说法正确的是( C )。
A)Java中的类可以有多个直接父类 B)抽象类不能有子类C)Java中的接口支持多继承 D)最终类可以作为其它类的父类3. 现有两个类A、B,以下描述中表示B继承自A的是(D)。
A) class A extends B B) class B implements AC) class A implements B D) class B extends A4. 下列选项中,用于定义接口的关键字是( A)。
A)interface B) implements C) abstract D) class5. 下列选项中,用于实现接口的关键字是( B)。
A)interface B) implements C) abstract D) class6. Java语言的类间的继承的关键字是( B )。
A) implements B) extends C) class D) public7. 以下关于Java语言继承的说法错误的是( A )。
A)Java中的类可以有多个直接父类 B)抽象类可以有子类C)Java中的接口支持多继承 D)最终类不可以作为其它类的父类8. 现有两个类M、N,以下描述中表示N继承自M的是(D)。
A) class M extends N B) class N implements MC) class M implements N D) class N extends M9. 现有类A和接口B,以下描述中表示类A实现接口B的语句是(A)。
A) class A implements B B) class B implements AC) class A extends B D) class B extends A10. 下列选项中,定义抽象类的关键字是( C)。
一、选择题1.编译Java程序后生成的面向JVM的字节码文件的扩展名是(B)。
A..javaB..classC..objD..exe2.下面关于Java语言特点的描述中,错误的是()。
A.Java是纯面向对象编程语言,支持单继承多重继承。
E.Java支持分布式的网络应用,可透明地访问网络上的其他对象。
B.Java支持多线程编程。
C.Java程序与平台无关、可移植性好。
3.下面标识符(名字)命名原则中,正确的是()。
A.类名的首字母小写B.接口名的首字母小写C.常量全部大写D.变量名和方法名的首字母大写4.下面()是正确的main()方法说明。
A.void main()B.private static void main(String args[])C.public main(String args[])D.public static void main(String args[])5.下面标识符中在Java语言中是合法的是()。
A.person$B.TwoUsersC.*pointD.instanceof6.下面()是合法标识符。
A.2endB.-helloC.=ABD.整型变量7.若x=5,y=8,则表达式x|y的值为()。
A.3B.13C.0D.58.若定义有变量float f1,f2=8.0F,则下列说法正确的是()。
A.变量f1,f2均被初始化为8.0B.变量f1没有被初始化,f2被初始化为8.0C.变量f1,f2均未被初始化D.变量f2没有被初始化,f1被初始化为8.09.若定义有short s; byte b; char c; 则表达式s*b+c的类型为()。
A.charB.shortC.intD.byte10.下列循环语句的循环次数是()。
int i = 5;do { System.out.println(i--);i--;} while(i!=0)A.5B.无限C.0D.111.定义一个类,必须使用的关键字是()A.publicB.classC.interfaceD.static12.如果声明一个类时使用abstract修饰符,则表明该类是()A.抽象类可以不用继承直接使用B.抽象类,必须被继承后才能使用C.共有类,在本包与其他包内均可访问D.最终类,不能被其他类继承13.关于构造方法的说法正确的是()A.一个类只能有一个构造方法B.一个类可以有多个不同名的构造方法C.构造方法与类同名D.构造方法必须自己定义14.下面关于抽象方法的说法中正确的是()A.抽象方法可以有方法体B.抽象方法可以出现在非抽象类C.抽象方法是没有方法体的方法D.抽象类中的方法都是抽象方法15.在java中,能够实现多重继承的技术是()A.内部类B.适配器C.接口D.继承16.若在某一个类定义中定义有如下的方法:AbstractvoidperfomDial(){};则该方法属于()A.本地方法B.最终方法C.静态方法D.抽象方法17.下面关于继承的说法中正确的是()A.子类将继承父类所有的属性和方法B.子类将继承父类的非私有属性和方法C.子类只继承父类public方法和属性D.子类只继承父类的方法,而不继承属性18.下面关于接口的说法中正确的是()A.实现一个接口必须实现接口的所有方法B.一个类只能实现一个接口C.接口间不能有继承关系D.接口和抽象是同一回事19.以下关于覆盖方法的叙述中正确的是()A.子类覆盖父类的方法时,子类对父类同名的方法将不能再做访问B.子类覆盖父类的方法时,可以覆盖父类中final方法和static方法C.子类覆盖父类的方法时,子类的方法声明必须与其父类中的声明完全一样D.子类覆盖父类的方法时,子类的方法声明只需与其父类中声明的方法名一样20.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。
Java复习题一、选择题1、以下代码执行后的输出结果是()char chA=’A’,chB=’b’;if (chA+27<chB) ++chA;System.out.println(“*”+chA+”*”);A、/*A*B、*B*C、*C*D、*a*2、执行以下代码后,打印出来的y的值是()int x=8,y=2;if (Math.pow(x,y)= =64)y=x;if (Math.pow(x,y)<63)y=2*x;if (Math.pow(x,y)>63)y=x/2;System.out.println(y);A、2B、4C、8 D.163、以下代码执行后的输出结果是()int i=1;switch(i){ case 0: System.out.print(“Zero”);break;case 1: System.out.print(“One”);case 2: System.out.print(“Two”);default: System.out.print(“Default”); }A、ZeroOneTwoDefaultB、OneTwoDefaultC、DefaultD、One4、以下代码执行后的输出结果()int a=-1;for(int i=4;i>0;i--){ a+=i;System.out.print(a);}A、-1B、368C、3689D、95、有以下代码片段,关于代码的编译,正确的说法()int iVar;for (iVar=1; iVar<=5; iVar++);{ System.out.print(iVar); }A、代码成功编译,执行后,输出为12345B、代码成功编译,执行后,输出为6C、代码成功编译,执行后,输出为1D、代码编译不成功,编译器将生成一些错误6、以下代码执行后的输出结果是()int a=6,b=3,c=0;switch(a%b){ case 2:c=a+b;case1:c=a-b;case 0:c=a*b;default:c=a/b;}System.out.println(c);A、2B、3C、9D、187、以下代码执行后,输出字符变量ch的值为()char ch=32for(int i=0;i<=400;i++){ switch(i%4){ case 1:ch=’a’;break;case2: ch=’b’;break;case 3: ch=’c’;break;default: ch=’d’;break;}}System.out.println(ch);A、aB、bC、cD、d8、下面的循环将执行()次int i=4,j=2;while(--i!=i/j){ System.out.println(i); }A、3B、2C、1D、09、分析以下代码,正确的一项是()for(int i=-2; true; i++){ if (i==0) continue;if(i>2) break;System.out.print(4/i+””);}A、程序编译通过,但运行出现死循环B、程序编译通过,但运行出现异常C、上述代码无法通过编译D、程序运行成功,打印出:-2 -4 4 210、关于以下代码的分析中,正确的一项是()int i=32767;while(--i>0);System.out.print(i);A、代码不能编译通过B、在程序运行阶段出现死循环C、成功执行,打印出结果1D、成功执行,打印出结果011、子类可以继承父类的()成员A、非私有B、私有C、publicD、protected12、若要定义一个不能被实例化的抽象类,则在类定义中必须加上修饰符(D)A、publicB、finalC、abstractD、private13、以下程序片段将创建()个对象int a=10;String b=”abc”;String c=new String(“abc”);MyTest test=new MyTest();A、4B、3C、2D、114、设有如下程序段,说法正确的是()int k=10; while(k==0){k=k-1;}A、while循环执行10次B、死循环C、循环一次也不执行D、循环执行一次15、下列叙述中错误的一条是()A 、父类不能替代子类B 、子类能够替代父类 C、子类继承父类 D 、父类包含子类16、设有以下程序:import java.io.*;public class Score{public static void main(String args[]){int a[]=new int [5];for(int i=0;i<a.length;i++){a[i]=(int)(Math.random()*10);}for(int i=0;i<a.length;i++){System.out.print(a[i]+””);}}}下列选项中错误的运行结果是()A、 9 6 0 5 2B、7 9 9 7 2C、1 8 6 9 6D、0 7 9 5 1016、代表对当前对象自身引用的关键字是()。
java期末复习题库及答案一、选择题1. Java是一种()。
A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言答案:B2. Java程序的执行流程是()。
A. 编译 -> 链接 -> 执行B. 编译 -> 执行C. 编译 -> 解释 -> 执行D. 解释 -> 执行答案:C3. 下列哪个是Java的关键字?()A. classB. functionC. includeD. namespace答案:A4. Java中的类是()。
A. 抽象的B. 具体的C. 既是抽象的也是具体的D. 以上都不是答案:A5. Java中,哪个关键字用于定义一个类?()A. publicB. classC. voidD. int答案:B二、填空题1. Java语言的跨平台特性主要得益于______机制。
答案:JVM(Java虚拟机)2. 在Java中,所有的类都是继承自______类。
答案:Object3. Java中的______关键字用于定义一个方法。
答案:void 或者其他返回类型4. 在Java中,______关键字用于定义一个类是公共的。
答案:public5. Java中的______关键字用于定义一个变量是静态的。
答案:static三、简答题1. 简述Java语言的特点。
答案:Java语言具有面向对象、跨平台、健壮性、多线程、安全性、简单性等特点。
2. 什么是Java的垃圾回收机制?答案:Java的垃圾回收机制是指JVM自动检测内存中不再被使用的对象,并释放它们占用的内存资源,以防止内存泄漏。
3. 什么是Java的异常处理机制?答案:Java的异常处理机制是指程序在执行过程中,当出现错误或异常情况时,Java运行时环境提供的一种处理机制,包括try、catch、finally和throw等关键字的使用。
四、编程题1. 编写一个Java程序,实现计算两个整数的和。
一、单项选择题(每小题2分,共20分)1. 有关Java语言的说法中,哪种是错误的(B)。
A.java是高级语言B.java是编译型语言C.java是面向对象语言D.java是移植性强的语言2.下面属于Java 关键字的是(C )。
A.INT B.hello C.false D.good3. 在Java程序main方法中,正确的参数是(C)。
A.main(string args[]) B.main(String ()args )C.main(String args[]) D.main(string []args )4. 一个URL地址为::80/local/index.html,则其中的含义为(C)。
A. 通信协议B. 资源C. 地址(机器名称)D. 通信端口5.在Java中,能实现多重继承效果的方式是(C)。
A.内部类B.适配器C.接口D.同步6.下列关于Java Application与Applet的说法中,正确的是(C )。
A.都包含main( )方法B.都通过“appletviewer”命令执行C.都通过“javac”命令编译D.都嵌入在HTML文件中7.关于以下代码所画图形的说明,正确的是(B )。
g.setColor(Color.black);g.drawLine(10,10,10,50);g.setColor(Color.red);g.drawRect(100,100, 50, 50);A.一条40像素长的垂直红线,一个边长为150像素的红色四方形B.一条40像素长的垂直黑线,一个边长为50像素的红色四方形C.一条50像素长的垂直黑线,一个边长为150像素的红色四方形D.一条50像素长的垂直红线,一个边长为50像素的红色四方形8.在Java中,窗口类的包是(B )。
A.java.io.*t B.java.awt.*C.java.applet.*t D..*9.设数组Array由以下语句定义int Array=new int[10],则数组第一个(首个)元素的正确引用方法为(A ) 。
Java复习题及答案第一题单项选择题1、在下列说法中,选出最正确的一项是(A )。
A、Java语言是以类为程序的基本单位的B、Java语言是不区分大小写的C、多行注释语句必须以//开始D、在Java语言中,类的源文件名和该类名可以不相同2、下列选项中不属于Java虚拟机的执行特点的一项是(D )。
A、异常处理B、多线程C、动态链接D、简单易学3、下列选项中,属丁JVM执行过程中的特点的一项是( C )。
A、编译执行B、多进程C、异常处理D、静态链接4、在Java语言中,那一个是最基本的元素?( C )A、方法B、包C、对象D、接口5、如果有2个类A和B,A类基于B类,则下列描述中正确的一个是( B )。
A、这2个类都是子类或者超类B、A是B超类的子类C、B是A超类的子类D、这2个类郡是对方的子类6、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D )A、abstractB、private (本类)C、protected(本包及其他包的子类)D、不使用保留字7、编译一个定义了3个类的Java源文件后,会产生多少个字符码文件,扩展名是什么?(D )A、13个字节码文件,扩展名是.classB、1个字节码文件,扩展名是.classC、3个字节码文件,扩展名是.javaD、3个字节码文件,扩展名是.class8、下列关于Java程序结构的描述中,不正确的一项是( C )。
A、一个Java源文件中可以包括一个package语句B、一个Java源文件中可以包括多个类定义,但是只能有一个public类C、一个Java源文件中可以有多个public类D、源文件名与程序类名必须一致9、下列说法正确的一项是( C )。
A、java.1ang.Integer是接口B、java.1ang.Runnable是类C、Doulble对象在iava.1ang包中D、Double对象在java.1ang.Object包中10、以下关于面向对象概念的描述中,不正确的一项是( B )。
JAVA复习题及答案第一章JAV A概述1.JA VA中哪三种平台:J2ME(嵌入式平台),J2SE(标准平台),J2EE(企业级平台).2.JA VA从第几版称为JA V A2:JA V A 1.2版。
3.JA VA有否指针:无。
4.JA VA的API指的是什么:Application ProgrammingInterface,JA V A的类库。
5.JA V A平台无关性是如何实现的:通过编译生成与平台无关的代码──字节码,而不是通常的特定机器上的机器码,由平台上的Java虚拟机中的Java解释器解释执行。
6.JA VA有哪两种程序形式:Application和Applet程序。
7.Application程序运行时系统调用程序的哪个方法:main()方法。
Applet程序执行时系统自动调用程序的哪个方法:init()方法。
8.绘图程序中系统自动调用哪个方法:paint(Graphics g)方法。
9.JDK是什么:Java开发工具包(Java Development Kit )的缩写,包括JAVA类库、JAVA编译器、JAVA解释器、运行时环境、命令行工具。
10.有哪几种主要的可视化的集成源程序编辑环境:Eclipse,JCreator, JBuilder等。
11.安装JDK的可执行文件是:jdk-1_5_0-windows-i586.exe12.安装JDK帮助文档的是:jdk-1_5_0-doc.zip第二章JAV A语言基础13.保留字是什么意思,能否用于程序员定义自己的类、方法、变量等名字:JA V A中已定义的用于特定用途的标识符。
不能。
14.i++与++i有什么区别?15.写出各种转义字符?p17。
\t, \n, \r, \‖, \’, \\16.编程良好习惯中,对象名、包名、类名、变量名、常量名、接口名、方法名中的字符的大小写如何设置?Package –名词且小写;Class--名词且第一个字母大写;Interface—同Class;Methods-动词且第一个字母小写,分隔词第一个字母大写,不用‖-―;Variable—第一个字母小写,不用‖_‖,‖$‖(对于inner class有意义);Constants—大写并用‖_‖17.标识符的用途:用于给类、方法、变量、接口、程序块、对象等起名字。
Question 18Given a file GrizzlyBear.java:1. package animals.mammals;2.3. public class GrizzlyBear extends Bear {4. void hunt() {5. Salmon s = findSalmon();6. s.consume();7. }8. }and another file, Salmon.java:1. package animals.fish;2.3. public class Salmon extends Fish {4. void consume() { /* do stuff */ }5. }Assume both classes are defined in the correct directories for theft packages, and that the Mammal class correctly defines the+findSalmon() method. Which two changes allow this code to compile correctly? (Choose two.)A. add public to the start of line 4 in Salmon.javaB. add public to the start of line 4 in GrizzlyBear.javaC. add import animals.mammals.*; at line 2 in Salmon.javaD. add import animals.fish.*; at line 2 in GrizzlyBear.javaE. add import animals.fish.Salmon.*; at line 2 in GrizzlyBear.javaF. add import animals.mammals.GrizzlyBear.*;at line 2 in Salmon.javaAnswer: ADQuestion 19Given:10. package com.sun.scjp;11. public class Geodetics {12. public static final double DIAMETER = 12756.32; // kilometers13. }Which two correctly access the DIAMETER member of the Geodetics class? (Choose two.)A. import com.sun.scjp.Geodetics;public class TerraCarta {public double halfway(){ return Geodetics.DIAMETER/2.0; } }B. import static com.sun.scjp.Geodetics;public class TerraCarta {public double halfway() { return DIAMETER/2.0; } }C. import static com.sun.scjp.Geodetics. *;public class TerraCarta {public double halfway() { return DIAMETER/2.0; } }D. package com.sun.scjp;public class TerraCarta {public double halfway() { return DIAMETER/2.0; } }Answer: ACQuestion 20Given classes defined in two different files:1. package util;2. public class BitUtils {3. private static void process(byte[] b) { }4. }1. package app;2. public class SomeApp {3. public static void main(String[] args) {4. byte[] bytes = new byte[256];5. // insert code here6. }7. }What is required at line 5 in class SomeApp to use the process method of BitUtils?A. process(bytes);B. BitUtils.process(bytes);C. app.BitUtils.process(bytes);D. util.BitUtils.process(bytes);E. import util.BitUtils. *; process(bytes);F. SomeApp cannot use the process method in BitUtils.Answer: FQuestion 21Given a class Repetition:1. package utils;2.3. public class Repetition {4. public static String twice(String s) { return s + s; }5. }and given another class Demo:1. // insert code here2.3. public class Demo {4. public static void main(String[] args) {5. System.out.println(twice("pizza"));6. }7. }Which code should be inserted at line 1 of Demo.java to compile and run Demo to print “pizzapizza”?A. import utils.*;B. static import utils.*;C. import utils.Repetition.*;D. static import utils.Repetition. *;E. import utils.Repetition.twice();F. import static utils.Repetition.twice;Answer: FQuestion 22Given:1. package test;2.3. class Target{4. public String name = "hello";5. }What can directly access and change the value of the variable name?A. any classB. only the TargetclassC. any class in the test packageD. any class that extends TargetAnswer: CQuestion 23Given:11. rbo = new ReallyBigObject();12. // more code here13. rbo = null;14. /* insert code here */Which statement should be placed at line 14 to suggest that the virtual machine expend effort toward recycling the memory used by theobject rbo?A. System.gc();B. Runtime.gc();C. System.freeMemory();D. Runtime.getRuntime().growHeap();E. Runtime.getRuntime().freeMemory();Answer: AQuestion 24Given:11. class Snoochy {12. Boochy booch;13. public Snoochy() { booch = new Boochy(this); }14. }15.16. class Boochy {17. Snoochy snooch;18. public Boochy(Snoochy s) { snooch = s; }19. }And the statements:21. public static void main(String[] args) {22. Snoochy snoog = new Snoochy();23. snoog = null;24. // more code here25. }Which statement is true about the objects referenced by snoog,snooch, and booch immediately after line 23 executes?A. None of these objects are eligible for garbage collection.B. Only the object referenced by booch is eligible for garbagecollection.C. Only the object referenced by snoog is eligible for garbagecollection.D. Only the object referenced by snooch is eligible for garbagecollection.E. The objects referenced by snooch and booch are eligible for garbagecollection.Answer: EQuestion 25Given:1. public class GC {2. private Object o;3. private void doSomethingElse(Object obj) { o = obj; }4. public void doSomething() {5. Object o = new Object();6. doSomethingElse(o);7. o = new Object();8. doSomethingElse(null);9.o=null;10. }11. }When the doSomething method is called, after which line does the Object created in line 5 become available for garbage collection?E. Line 9F. Line 10Answer: DQuestion 26Given:11. public void genNumbers() {12. ArrayList numbers = new ArrayList();13. for (int i=0; i<10; i++) {14. int value = i * ((int) Math.random());15. Integer intObj = new Integer(value);Copyright Tarena Corporation,2008.All rights reserved16. numbers.add(intObj);17. }18. System.out.println(numbers);19. }Which line of code marks the earliest point that an object referenced by intObj becomes a candidate for garbage collection?A. Line 16B. Line 17C. Line 18D. Line 19E. The object is NOT a candidate for garbage collection.Answer: DQuestion 27Which two are true? (Choose two.)once by the garbage collector.E. The order in which finalize will be called on two objects is based onthe order in which the two objects became finalizable.Answer: BDQuestion 28Given:15. public class Yippee {16. public static void main(String [] args) {17. for(int x = 1; x < args.length; x++) {18. System.out.print(args[x] +" ");19. }20. }21. }and two separate command line invocations:java Yippeejava Yippee 1234What is the result?A. No output is produced.123B. No output is produced.234C. No output is produced.1234D. An exception is thrown at runtime.Copyright Tarena Corporation,2008.All rights reserved123E. An exception is thrown at runtime.234F. An exception is thrown at rijntime.1234Answer: BQuestion 29Given a correctly compiled class whose source code is:1. package com.sun.sjcp;2. public class Commander {3. public static void main(String[] args) {4. // more code here5. }6. }Assume that the class file is located in /foo/com/sun/sjcp/, the currentdirectory is /foo/, and that the classpath contains “.“ (currentdirectory).Which command line correctly runs Commander?A. java CommanderB. java com. sim. manderC. java com/sun/sjcp/CommanderD. java -cp com.sun.sjcp CommanderE. java -cp com/sun/sjcp CommanderAnswer: BQuestion 30Given:11. public class Commander {12. public static void main(String[] args) {13. String myProp = /* insert code here */14. System.out.println(myProp);15. }16. }and the command line:java -Dprop.custom=gobstopper CommanderWhich two, placed on line 13, will produce the output gobstopper?(Choose two.)A. System.load("prop.custom");B. System.getenv("prop.custom");C. System.property("prop.custom");D. System.getProperty("prop.custom");E. System.getProperties().getProperty("prop.custom");Answer: DE。