Java基础测试题答案
java基础试题及答案
java基础试题及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. structD. enum答案:A2. 下列哪个选项是Java中的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. 在Java中,哪个修饰符用于声明一个成员变量为类的私有成员?A. privateB. publicC. protectedD. static答案:A4. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B5. 在Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B6. 下列哪个选项是Java集合框架中的一部分?A. StringB. ArrayListC. FileD. Thread答案:B7. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D8. Java中,哪个关键字用于定义一个抽象方法?A. abstractB. finalC. staticD. native答案:A9. 在Java中,哪个关键字用于定义一个内部类?A. innerB. nestedC. innerclassD. class答案:D10. Java中,哪个关键字用于定义一个静态方法?A. staticB. dynamicC. finalD. abstract答案:A二、填空题(每题3分,共15分)1. Java中,用于定义一个类的关键字是______。
答案:class2. Java程序的入口点是______方法。
答案:main3. 在Java中,______关键字用于声明一个变量为常量。
答案:final4. Java中,______关键字用于定义一个方法为静态的。
Java_基础试题及答案
班级:姓名:学号:《JAVA程序设计》试题1一、单项选择填空(每小题2分,共50分)1.下列有关Java语言的叙述中,正确的是(B)A、Java是不区分大小写的B、源文件名与public权限的类名必须相同C、源文件名其扩展名为.jarD、源文件中public类的数目不限2.在Java中,负责对字节代码解释执行的是(B)。
字节就是class 文件A、垃圾回收器B、虚拟机C、编译器D、多线程机制3.在Java程序设计中,由Java编译器默认导入的包是(D)A、java.appletB、java.awtC、java.util 输入语言D、ng4.编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为(B)A、.javaB、.classC、.htmlD、.exe5.在Java中,用package语句定义一个包时,该包的层次结构即是(b)A、与文件的结构相同B、与文件目录的层次相同C、与文件类型相同D、与文件大小相同6.有时在程序设计中采用分治算法而选择递归,“递归”的基本思想是(c)A、“让别人反复调用自己”B、“自己反复调用别人”C、“自己反复调用自己”D、以上说法都不对7.main方法是Java Application程序执行的入口,含有main方法的类是主类,且main方法的定义是唯一的,以下哪项是正确的(b)A、public static void main()B、public static void main(String args[ ])C、public static int main(String arg[])D、public void main(String arg[])8.按照Java的标识符的行业命名规范,下列分别表示一个类和一个方法的标识符比较合适的是(b)A、Helloworld,GetSwimmingScoreB、HelloWorld,getSwimmingScoreC、helloworld,getswimmingscoreD、helloWorld,Getswimmingscore9.以下程序的运行结果为(d)public class IfTest{public static void main(String args[]){int x=3;{int y=1;}if(x==y)System.out.println(“equal”);elseSystem.out.println(“Not Equal”);}}A、Not equalB、EqualC、无输出D、编译出错,找不到y10.下列说法不正确的是(c)A、IOException必须被捕获或抛出B、java语言不自动初始化变量的值C、java语言不允许同时继承一个类并实现一个接口D、java语言会自动回收内存中的垃圾11.在Java中,所有类的根类是(a)A、ng.ObjectB、ng.ClassC、java.applet.AppletD、java.swing.Jframe12.下列方法中可以用来创建一个新线程的是(b)A、实现ng.Runnable接口并重写start()方法B、实现ng.Runnable接口并重写run()方法C、实现ng.Thread接口并重写run()方法D、实现ng.Thread类并重写start()方法13.启动Applet小程序时,即调用类似于应用程序main方法的入口方法(b)A、stop()B、init()C、start()D、destroy()14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。
java基础考试题及答案
新员工考试一、选择题共30题,每题2分1.下面哪些是合法的标识符多选题A. $personsB. TwoUsersC. pointD. thisE. _endline答案A,B,E分析Java的标识符可以以一个Unicode字符,下滑线_,美元符$开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字this保留字;2.哪些是将一个十六进制值赋值给一个long型变量单选题A. long number = 345L;B. long number = 0345;C. long number = 0345L;D. long number = 0x345L答案 D分析十六进制数以0x开头,long型数以L大小写均可,一般使用大写,因为小写的l 和数字1不易区分;3.下面的哪些程序片断可能导致错误多选题A. String s = "Gone with the wind";String t = " good ";String k = s + t;B. String s = "Gone with the wind";String t;t = s3 + "one";C. String s = "Gone with the wind";String standard = s.toUpperCase;D. String s = "home directory";String t = s - "directory";答案B,D分析A:String类型可以直接使用+进行连接运算;B:String是一种Object,而不是简单的字符数组,不能使用下标运算符取其值的某个元素,错误;C:toUpperCase方法是String对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果String类型;D:String类型不能进行减-运算,错误;4.point x处的哪些声明是句法上合法的多选题class Person {private int a;public int changeint m{ return m; }}public class Teacher extends Person {public int b;public static void mainString arg{Person p = new Person;Teacher t = new Teacher;int i;// point x}}A. i = m;B. i = b;C. i = p.a;D. i = p.change30;E. i = t.b.答案D,E分析A:m没有被声明过,不能使用;B:虽然b是类Teacher的public成员变量,但是在静态方法中不能使用类中的非静态成员;C:a是类Person的private成员,在类外不能直接引用;D:changeint m方法是public方法,并且返回一个int型值,可以通过类的实例变量p引用并赋值给一个int型变量;E:b是类Teacher的public成员变量,且是int型,可以通过类的实例变量t引用并赋值给一个int型变量;5.下面的代码片断多选题:1 public void create {2 Vector myVect;3 myVect = new Vector;4 }下面的哪些陈述正确A. 第二行的声明不会为变量myVect分配内存空间;B. 第二行的声明分配一个到Vector对象的引用的内存空间;C. 第二行语句创建一个Vector类对象;D. 第三行语句创建一个Vector类对象;E. 第三行语句为一个Vector类对象分配内存空间;答案A,D,E分析要为一个新对象分配空间必须执行new Xxx调用,new调用执行以下的操作:1.为新对象分配空间并将其成员初始化为0或者null;2.执行类体中的初始化;例如在类中有一个成员声明int a=10;在第一步后a=0 ,执行到第二步后a=103.执行构造函数;4.变量被分配为一个到内存堆中的新对象的引用;6.下面的哪些答案可以用以表示八进制值8 单选题A. 010B. 0x10C. 08D. 0x8答案 A分析八进制值以0开头,以0x开头的为十六进制值,八进制中不能出现数字8,最大只有7;1 class Person {2 public void printValueint i, int j {/…/ }3 public void printValueint i{/.../ }4 }5 public class Teacher extends Person {6 public void printValue {/.../ }7 public void printValueint i {/.../}8 public static void mainString args{9 Person t = new Teacher;10 t.printValue10;11 }12 }第十行的声明将调用哪些方法单选题A. on line 2B. on line 3C. on line 6D. on line 7答案 D分析变量t是一个Person对象,但是它是用Teacher实例化的,这个问题涉及到java的编译时多态和运行时多态的问题,就编译时多态来说,t实际上是一个Person类,这涉及到类型的自动转换将一个子类的实例赋值给一个父类的变量是不用进行强制类型转换,反之则需要进行强制类型转换,而且被赋值的变量实际上应该是一个子类的对象,如果对t调用了子类中新增的方法则造成编译时错误编译将不能通过,而在运行时,运行时系统将根据t实际指向的类型调用对应的方法,对于本例来说,t.print10将调用t实际指向的Teacher类的对应方法;在java中,可以用一个子类的实例实例化父类的一个变量,而变量在编译时是一个父类实例,在运行时可能是一个子类实例;7.给出下面的代码:单选题x的取值在什么范围内时将打印字符串"second";A. x > 0B. x > -3C. x <= -3D. x <= 0 & x > -3答案 D分析x>0时打印"first",x>-3&&x<=0时打印"second",x<=-3时打印"third";这个题目没有什么难的,只要理解if语句的语法就可以了;8.下面的哪些赋值语句是不正确的单选题A. float f = 11.1;B. double d = 5.3E12;C. double d = 3.14159;D. double d = 3.14D.答案 A题目:;浮点数的赋值是带有小数点的数字缺省是double型的,如果在浮点数后面加f或者F则是float,后面加d或者D则是double,科学计数法形式的浮点数也是double型的,而double的精度比float高,将一个高精度的double赋值给一个低精度的float时需要进行强制类型转换,反之则不需要;9.给出下面的不完整的类代码: 单选题class Person {String name, department;int age;public PersonString n{ name = n; }public PersonString n, int a{ name = n; age = a; }public PersonString n, String d, int a {// doing the same as two arguments version of constructor// including assignment name=n,age=adepartment = d;}}下面的哪些表达式可以加到构造方法中的"doing the same as..."处A. Personn,a;B. thisPersonn,a;C. thisn,a;D. thisname,age.答案 C分析:在同一个类的不同构造方法中调用该类的其它构造方法需要使用this…的形式,而且必须是在构造方法的第一行调用,这个和普通的方法重载调用的方式不同,普通的方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此答案A是不行的,B的语法就是错误的,D的错误在于在父类型的构造函数被调用前不能引用类的成员;构造方法是一个类对象实例化的起点虽然严格来说首先执行的并不是构造方法的第一个语句,而是内存的分配,因此在构造方法中不能将成员作为参数引用;10.public void test {// 多选题try {oneMethod;} catch ArrayIndexOutOfBoundsException e {} catchException e {} finally {}}在oneMethod方法运行正常的情况下将显示什么A. condition 1B. condition 2C. condition 3D. finally答案 ad分析:如果try块中的语句在执行时发生异常,则执行从该处中断而进入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常是catch中指定的异常的子类就匹配成功进而执行相应的catch中的内容,而finally块中的内容无论是否发生异常都将被执行;11.给出下面的代码:单选题public class Test {void printValueint m{while --m > 10}public static void mainString arg {int i=10;Test t= new Test;t.printValuei;}}输出将是什么A. The value is 8B. The value is 9C. The value is 10D. The value is 11答案:c此题考察的是do… while循环和 -- 操作符的知识,do…while最少被执行一次,在执行完do中的内容后判断while中的条件是否为true,如果为true的话就再执行do中的内容,然后再进行判断,以此类推直到while的判断为false时退出循环执行循环后面的内容,而—操作符的规则是在变量右边的-- 将先进行运算,然后才是使变量的值减一,而在变量左边的是先将变量的值减一再运算;12.给出下面的代码:单选题1 public void modify {2 int i, j, k;3 i = 100;4 while i > 0 {5 j = i 2;7 k = k + 1;8 i--;9 }10 }哪些行在编译时可能产生错误;A. line 4B. line 6C. line 7D. line 8答案 c这个问题在前面有关变量的类型及其作用域的问题中讨论过,局部变量在使用前必须显式初始化,而代码中的变量k在使用前没有;13.给出下面的代码片断:单选题1 String str = null;2 if str = null && str.length > 10 {34 }5 else if str = null & str.length < 5 {67 }哪些行将导致错误A. line 1B. line 2C. line 5D. line 8答案 c此题需要将代码仔细看清楚,查询没有逻辑错误,if …else的使用没有问题,也没有拼写错误,错误在于第5行的“与”操作符的使用,逻辑操作符logical operator的“与”应该是&&,而&是位逻辑操作符bitwise logical operator的“与”,使用的对象不一样,逻辑操作符的“与”的左右操作数都应该是布尔型logical boolan的值,而位逻辑操作符的左右操作数都是整型integral值;14.给出下面的代码:单选题public class Person{static int arr = new int10;public static void mainString a {}}那个叙述是对的;A. 编译时将发生错误;B. 编译时正确但是运行时出错;C. 输出为0;D. 输出为null答案 cint型数组是类对象,它在类被加载时完成初始化,在前面题目中已经有叙述,由于是原始数据类型int,其初始值为0;15.public class Parent {//多选题public int addValue int a, int b {int s;s = a+b;return s;}}class Child extends Parent {}哪些方法可以加入类Child中A. int addValue int a, int b {// do something...}B. public void addValue {// do something...}C. public int addValue int a {// do something...}D. public int addValue int a, int b throws MyException {//do something...}答案bc此题涉及方法重载overload,方法重写override以及类派生时方法重写的规则;方法重载的规则是:一、参数列表必须不同,个数的不同完全可以,如果个数相同则参数类型的不同不能引起歧意,例如int 和long,float和double就不能作为唯一的类型不同;二、返回值可以不同,但是不能是重载时唯一的不同点这点和c++中不同,c++中返回类型必须一致;方法重写发生在类继承时,子类可以重写一个父类中已有的方法,必须在返回类型和参数列表一样时才能说是重写,否则就是重载,java中方法重写的一个重要而且容易被忽略的规则是重写的方法的访问权限不能比被重写的方法的访问权限低重写的另一个规则是重写的方法不能比被重写的方法抛弃throws更多种类的异常,其抛弃的异常只能少,或者是其子类,不能以抛弃异常的个数来判断种类,而应该是异常类层次结果上的种类;此题中答案a的错误就是重写的访问权限比被重写的方法的低,而b,c都属于重载,d的错误在于比被重写的方法抛弃了更多种类的异常;16.共有成员变量MAX_LENGTH是一个int型值,变量的值保持常数值100;使用一个短声明定义这个变量;单选题A. public int MAX_LENGTH=100;B. final int MAX_LENGTH=100;C. final public int MAX_LENGTH=100;D. public final int MAX_LENGTH=100;答案 dJava中共有变量使用public定义,常量变量使用final,另外注意的是修饰符的顺序,一个最完整的修饰是public static final int varial_a=100;这个顺序不能错,这和c++中也是不同的;而答案c恰恰错在修饰符的顺序上;17.下面的那个java源文件代码片断是对的多选题A. package testpackage;public class Test{//do something...}B. import java.io.;package testpackage;public class Test{// do something...}C. import java.io.;class Person{// do something...}public class Test{// do something...}D. import java.io.;import java.awt.;public class Test{// do something...}答案acdjava中的package语句必须是源文件中除去说明以外的第一条语句,导入包语句可以有几个,但是必须位于package语句之后,其它类定义之前,一个源文件中可以有几个类,但最多只能有一个是public的,如果有,则源文件的文件名必须和该类的类名相同;18.下面的哪些声明是合法的多选题A. long l = 4990;B. int i = 4L;C. float f = 1.1;D. double d = 34.4;E. double t = 0.9F.答案ade此题的考点是数字的表示法和基本数据类型的类型自动转换,没有小数点的数字被认为是int型数,带有小数点的数被认为是double型的数,其它的使用在数字后面加一个字母表示数据类型,加l或者L是long型,加d或者D是double,加f或者F是float,可以将低精度的数字赋值给高精度的变量,反之则需要进行强制类型转换,例如将int,short,byte赋值给long型时不需要显式的类型转换,反之,将long型数赋值给byte,short,int型时需要强制转换int a=int123L;;19.如下描述:多选题public class Parent {int change {…}}class Child extends Parent {}哪些方法可被加入类ChildA. public int change{}B. int changint i{}C. private int change{}D. abstract int chang{}答案ab这个题目的问题在第35题中有详尽的叙述;需要注意的是答案D的内容,子类可以重写父类的方法并将之声明为抽象方法,但是这引发的问题是类必须声明为抽象类,否则编译不能通过,而且抽象方法不能有方法体,也就是方法声明后面不能带上那两个大括号{},这些D都不能满足;20.给出下面的代码:单选题1 class Parent {2 private String name;3 public Parent{}4 }5 public class Child extends Parent {6 private String department;7 public Child {}8 public String getValue{ return name; }9 public static void mainString arg {10 Parent p = new Parent;11 }12 }哪些行将导致错误A. line 3B. line 6C. line 7D. line 8E. line 10答案 d第8行的getValue试图访问父类的私有变量,错误,参看前面有关变量类型及其作用域的叙述21.变量"result"是一个boolean型的值,下面的哪些表达式是合法的多选题A. result = true;B. if result { // do something... }C. if result= 0 { // so something... }D. result = 1答案abJava的boolean不同于c或者c++中的布尔值,在java中boolean值就是boolean 值,不能将其它类型的值当作boolean处理;22.类Teacher和Student都是类Person的子类单选题Person p;Teacher t;Student s;P,t和s都是非空值;ift instanceof Person { s = Studentt; }这个if语句导致的结果是什么A. 将构造一个Student对象;B. 表达式合法;C. 编译时非法;D. 编译时合法而在运行时可能非法;答案 cinstanceof操作符的作用是判断一个变量是否是右操作数指出的类的一个对象,由于java语言的多态性使得可以用一个子类的实例赋值给一个父类的变量,而在一些情况下需要判断变量到底是一个什么类型的对象,这时就可以使用instanceof了;当左操作数是右操作数指出的类的实例或者是子类的实例时都返回真,如果是将一个子类的实例赋值给一个父类的变量,用instanceof判断该变量是否是子类的一个实例时也将返回真;此题中的if语句的判断没有问题,而且将返回真,但是后面的类型转换是非法的,因为t是一个Teacher对象,它不能被强制转换为一个Student对象,即使这两个类有共同的父类;如果是将t转换为一个Person对象则可以,而且不需要强制转换;这个错误在编译时就可以发现,因此编译不能通过;23.给出下面的类:单选题public class Sample{long length;public Samplelong l{ length = l; }public static void mainString arg{Sample s1, s2, s3;s1 = new Sample21L;s2 = new Sample21L;s3 = s2;long m = 21L;}}哪个表达式返回true;A. s1 == s2;B. s2 == s3;C. m == s1;D. s1.equalsm.答案 b前面已经叙述过==操作符和String的equals方法的特点,另外==操作符两边的操作数必须是同一类型的可以是父子类之间才能编译通过;24.给出下面有关List的表达式:多选题List l = new List6,true;哪些叙述是对的;A. 在没有其它的约束的条件下该列表将有6行可见;B. 一行的最大字符数是6C. 列表将允许用户多选;D. 列表只能有一项被选中;答案acList组件的该构造方法的第一个参数的意思是它的初始显式行数,如果该值为0则显示4行,第二个参数是指定该组件是否可以多选,如果值为true则是可以多选,如果不指定则缺省是不能多选;25.给出下面的代码:单选题class Person {String name,department;public void printValue{}}public class Teacher extends Person {int salary;public void printValue{// doing the same as in the parent method printValue// including print the value of name and department.}}下面的哪些表达式可以加入printValue方法的"doing the same as..."部分A. printValue;B. this.printValue;C. person.printValue;D. super.printValue.答案 d子类可以重写父类的方法,在子类的对应方法或其它方法中要调用被重写的方法需要在该方法前面加上”super.”进行调用,如果调用的是没有被重写的方法,则不需要加上super.进行调用,而直接写方法就可以;这里要指出的是java支持方法的递归调用,因此答案a和b在语法上是没有错误的,但是不符合题目代码中说明处的要求:即做和父类的方法中相同的事情打印名字和部门,严格来说也可以选a和b;26.给出下面的代码片断:多选题1 switchm2 {34 case 2:56 }m为哪些值将导致"default"输出A. 0B. 1C. 2D. 3答案cd此题考察switch语句的用法,switch的判断的条件必须是一个int型值,也可以是byte、short、char型的值,case中需要注意的是一个case后面一般要接一个break语句才能结束判断,否则将继续执行其它case而不进行任何判断,如果没有任何值符合case 列出的判断,则执行default的语句,default是可选的,可以没有,如果没有default而又没有任何值匹配case中列出的值则switch不执行任何语句;27.给出下面的不完整的方法:多选题12 { success = connect;3 if success==-1 {4 throw new TimedOutException;5 }6}TimedOutException 不是一个RuntimeException;下面的哪些声明可以被加入第一行完成此方法的声明;A. public void methodB. public void method throws ExceptionC. public void method throws TimedOutExceptionD. public void method throw TimedOutExceptionE. public throw TimedOutException void method答案b、c如果程序在运行的过程中抛出异常,而这个异常又不是RuntimeException或者Error,那么程序必须捕获这个异常进行处理或者声明抛弃throws该异常,捕获异常可以使用try{}catch{}语句,而抛弃异常在方法声明是声明,在方法的声明后面加上throws XxxxException,抛弃多个异常时在各异常间使用逗号,分隔,题目中的程序在运行时抛出的不是一个RuntimeException,所有必须捕获或者抛弃,而程序又没有捕获,所有应该在方法声明中声明抛弃;由于Exception是所有异常的父类,所有当然也可以代表RuntimeException了;28.下面的哪些答案可以正确表示一个十六进制数字10 单选题A. 0xAB. 0x16C. 0AD. 016答案 a十六进制数以0x开头,以0开头的是八进制数;十六进制表示中的a,b,c,d,e,f依次为10,11,12,13,14,15;29.给出下面的代码:单选题1 public class Test {2} int m, n;3} public Test {}4} public Testint a { m=a; }5} public static void mainString arg {6} Test t1,t2;7} int j,k;8} j=0; k=0;9} t1=new Test;10} t2=new Testj,k;11} }12} }在编译时哪行将导致一个错误A. line 3B. line 5C. line 6D. line 10答案 d第10行的声明调用一个带两个参数的Test的构造方法,而该类没有这样的构造方法;二、简答题1.读如下程序,说出结果,并说明得出结果原因10分;public class BreakContinue {public static void mainString args {for int i = 0; i < 10; i++ {ifi == 3 || i == 5 {continue;}for int j = 0; j < i; ++j {if i + j > 5 {break;}}if i == 6 {break;}}}}答案:1,2,3,4,52.读程序,说出j值,并说明得出结果原因10分;public class Test {private static int j = 0;public static void mainString args {methodA0;}private static boolean methodBint k{j += k;return true;}public static void methodAint i {boolean b;b = i < 10 | methodB4;b = i < 10 || methodB8; // 此处短路method不进行计算}}答案:4三、编程题1.请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母20分;答案:1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母; importpublic class Ex26 {public static void mainString args{//保存用户输入的第二个字母char weekSecond;//将Scanner类示例化为input对象,用于接收用户输入Scanner input = new ScannerSystem.in;//开始提示并接收用户控制台输入System.out.print"请输入星期值英文的第一个字母,我来帮您判断是星期几:";String letter = input.next;//判断用户控制台输入字符串长度是否是一个字母if letter.length == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入char weekFirst = letter.charAt0;switch weekFirst{case'm'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'M':System.out.println"星期一Monday";break;case't'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'T':System.out.print"由于星期二Tuesday与星期四Thursday均以字母T开头,故需输入第二个字母才能正确判断:";letter = input.next;//判断用户控制台输入字符串长度是否是一个字母if letter.length == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = letter.charAt0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'U' || weekSecond == 'u'{System.out.println"星期二Tuesday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'H' || weekSecond == 'h'{System.out.println"星期四Thursday";break;//控制台错误提示} else{System.out.println"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else {//控制台错误提示System.out.println"输入错误,只能输入一个字母,程序结束";break;}case'w'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'W':System.out.println"星期三Wednesday";break;case'f'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'F':System.out.println"星期五Friday";break;case's'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'S':System.out.print"由于星期六Saturday与星期日Sunday均以字母S开头,故需输入第二个字母才能正确判断:";letter = input.next;//判断用户控制台输入字符串长度是否是一个字母if letter.length == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = letter.charAt0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'A' || weekSecond == 'a'{System.out.println"星期六Saturday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'U' || weekSecond == 'u'{System.out.println"星期日Sunday";break;//控制台错误提示} else{System.out.println"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else{//控制台错误提示System.out.println"输入错误,只能输入一个字母,程序结束";break;}default://控制台错误提示System.out.println"输入错误,不能识别的星期值第一个字母,程序结束";break;}} else{//控制台错误提示System.out.println"输入错误,只能输入一个字母,程序结束"; }}}。
java基础测试题_含答案
Java基础试题姓名一、选择题(每题2分,共30分)1.请写出标识符的命名规则描述正确的是[多选](ABCD )A、由英文字母、数字、_和$组成,长度不限。
B、标识符的第一个字符不能是数字C、标识符区分大小写。
D、标识符不能包含空格。
2. 下列属于正确标识符的选项有[多选](BDGH)A. intB. $_CountC. 3MD. HelloE. b-7F. ms#dG. boolH. D96583、下列哪一个不属于java的基本类型( B )A、intB、StringC、floatD、byte4、下列那条语句能编译通过( A )A、String String=”String”;B、float float=”3.14”;C、int int = 11;D、int i= 1.1;5、下列代码的执行结果是: ( D )public class Test1{public static void main(String args[]){float t=9.0f;int q=5;System.out.println((t++)*(--q));}}A、40B、40.0C、36D、36.06、int长度描述正确的是(A )A、-2^31到2^31 - 1B、-2^32到2^32 - 1C、-2^7到2^7 - 1D、-2^8到2^8 - 17、关于==和equals方法描述不正确的是( D )A、==是运算符、equals是方法B、==只比较对象,equals会先比较对象,如果不是一个对象,会对对象的值进行比较。
C、String a= "1"; String b= "1"; System.out.println(a==b); 输出结果为:trueD、String a=new String("1");String b=new String("1");System.out.println(a==b);输出结果为:true8、下列关于哪个不属于java的特性( D )A、封装B、继承C、多态D、重载9、某一个子类要继承一个父类,要使用关键字(B )A、importB、extendsC、implementsD、java10、某一个子类要实现一个父接口,要使用关键字(C )A、importB、extendsC、implementsD、java11、以下关于接口和类的说法正确的是( C )A、接口和类都可以实现多重继承B、子类可以继承多个父类C、子类可以实现多个接口D、一个子类不能同时继承某一个父类和实现某一个接口12、一个非抽象子类,如果要实现某个接口,则(A )A、必须实现该接口中的所有抽象方法B、可以实现部分抽象方法C、可以不实现任何抽象方法D、无所谓13、下列关于Java线程的说法那些是正确的( D )A、每一个Java、线程可以看成由代码.一个真实的CPU以及数据三部份组成。
java基础入门考试题目及答案
java基础入门考试题目及答案一、选择题(每题2分,共20分)1. Java中,哪个关键字用于声明一个类?A. classB. interfaceC. structD. object答案:A2. 下列哪个是Java中的保留字?A. appleB. publicC. javaD. dog答案:B3. Java中,哪个方法用于获取字符串的长度?A. length()B. size()C. count()D. length答案:A4. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D5. Java中,哪个关键字用于声明一个接口?A. classB. interfaceC. structD. object答案:B6. Java中,哪个关键字用于声明一个包?A. packageB. importC. classD. public答案:A7. Java中,哪个关键字用于实现多重继承?A. extendsB. implementsC. extends and implementsD. None of the above答案:B8. 在Java中,哪个关键字用于声明一个变量?A. varB. letC. defD. val答案:A9. Java中,哪个关键字用于声明一个常量?A. finalB. constC. staticD. var答案:A10. 在Java中,哪个关键字用于抛出一个异常?A. throwB. throwsC. catchD. try答案:B二、填空题(每题2分,共20分)1. Java是一种_________语言,它支持跨平台运行。
答案:面向对象2. Java程序的执行入口是_________方法。
答案:main3. 在Java中,所有的类都是_________类的子类。
答案:Object4. Java中,用于声明一个私有方法的关键字是_________。
大学java基础考试试题及答案
大学java基础考试试题及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于声明一个类?A. publicB. classC. interfaceD. abstract答案:B2. 在Java中,以下哪个选项是正确的字符串声明?A. String s = "Hello";B. String s = 'Hello';C. String s = "Hello", "World";D. String s = 'Hello', 'World';答案:A3. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B4. 在Java中,以下哪个选项是合法的变量名?A. 2variableB. variable2C. _variableD. variable$答案:C5. Java中,以下哪个选项是正确的继承关系?A. public class B extends AB. public class B implements AC. public class B extends interface AD. public class B implements interface A答案:A6. 以下哪个Java关键字用于定义接口?A. classB. interfaceC. abstractD. final答案:B7. 在Java中,以下哪个选项是正确的方法定义?A. public void myMethod();B. public void myMethod(int x);C. public void myMethod() {}D. public void myMethod(int x) {}答案:D8. Java中,以下哪个关键字用于定义包?A. packageB. importC. classD. interface答案:A9. 在Java中,以下哪个选项是正确的数组声明?A. int[] myArray = new int[10];B. int[] myArray = new int(10);C. int myArray[] = new int[10];D. int[] myArray = new int{10};答案:A10. Java中,以下哪个关键字用于实现多线程?A. threadB. synchronizedC. implementsD. extends答案:D二、填空题(每题2分,共20分)1. 在Java中,________关键字用于定义一个方法。
java基础测试题及答案
一、选择题(每题2分,共40分)1、下面哪个是Java语言中正确的标识符( C )A、3comB、importC、thatD、this2、下面哪个语句(初始化数组)是不正确的:(B)A.int x[] = {1,2,3}; B.int x[3] = {1,2,3};C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3};3、下述概念中不属于面向对象方法的是( D )。
A.对象、消息 B.继承、多态C.类、封装 D.过程调用4、下面的代码段中,执行之后i 和j 的值是什么? ( B )int i = 1;int j;j = i++*2+3*--i;A.1, 2 B.1, 5 C.2, 1 D.2, 25、下面哪条语句把方法声明为抽象的公共方法?(B )A.public abstract method();B.public abstract void method();C.public abstract void method(){}D.public void method() extends abstract;6、下面关于java中类的说法哪个是不正确的?( C )A.类体中只能有变量定义和成员方法的定义,不能有其他语句。
B.构造函数是类中的特殊方法。
C.类一定要声明为public的,才可以执行。
D.一个java文件中可以有多个class定义。
7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class A{ int i;static String s;void method1() { }static void method2() { }}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2()8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ( B )A、CardLayoutB、FlowLayoutC、BorderLayoutD、GridLayout9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C )A.滑块B.进度条C.按钮D.标签10、在Java 中如果要在字符串类型对象s=“JA V A”,中找出‘V’出现的位置可使用下面哪个方法:(B)A.mid(2,s); B.charAt(2); C.s.indexOf(‘V’);D.indexOf(s,’V’);11、Java中哪个类提供了随机访问文件的功能。
java基础试题及答案
java基础试题及答案Java是一种广泛应用的计算机编程语言,具有简单、可移植、面向对象、安全以及高性能等特点。
它在互联网、移动应用、企业级应用开发等领域都有着重要的地位。
为了帮助大家更好地掌握Java基础知识,以下是一些常见的Java基础试题及答案。
一、选择题1. 下列关于Java语言的特点,错误的是:A. Java是一种面向对象的语言B. Java具有可移植性C. Java是一种编译型语言D. Java具有垃圾回收机制答案:C2. Java程序的入口点是:A. public static void main(String[] args)B. public static void start(String[] args)C. public static void run(String[] args)D. public static void execute(String[] args)答案:A3. 下列关于Java包(package)的说法,正确的是:A. 包用于组织类和接口B. 包是Java中的关键字C. 一个Java文件只能属于一个包D. 包的命名必须与所在的文件夹相同答案:A二、填空题1. 关键字____用于定义类的继承关系。
答案:extends2. 在Java中,____用于创建对象的实例。
答案:new3. Java中,____可以用于捕获、处理异常。
答案:try-catch三、简答题1. 什么是面向对象编程?答:面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,将问题描述为一组对象的集合,通过对象之间的互相作用来解决问题。
面向对象编程主要包括封装、继承和多态三个基本特性。
2. Java的封装是指什么?答:封装是面向对象编程中的一种基本特性,指的是将数据和操作数据的方法放在一个类中,对外部隐藏内部的具体实现细节,只暴露必要的接口供外部调用。
公司java基础机试题及答案
公司java基础机试题及答案1. 以下哪个选项是Java中的关键字?A. classB. interfaceC. publicD. All of the above答案:D2. Java中,哪个类是所有Java类的根类?A. ObjectB. StringC. SystemD. Thread答案:A3. 在Java中,以下哪种类型的变量不能被声明为final?A. intB. doubleC. StringD. None of the above答案:D4. 下列哪个是Java中的合法标识符?A. 2variableB. variable2C. variable-2D. $variable答案:B5. Java中,哪个关键字用于抛出异常?A. throwB. throwsC. catchD. try答案:A6. 在Java中,以下哪个选项正确地声明了一个字符串数组?A. String[] array;B. String array[];C. Both A and BD. None of the above答案:C7. Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. final答案:B8. 在Java中,以下哪个选项是正确的方法重载示例?A. public void display(int number);public void display(double number);B. public int add(int a, int b);public double add(double a, double b);C. Both A and BD. None of the above答案:C9. Java中,哪个关键字用于定义一个抽象方法?A. abstractB. finalC. staticD. synchronized答案:A10. 在Java中,以下哪个选项是正确的内部类声明?A. class Outer {class Inner {}}B. class Outer {public class Inner {}}C. Both A and BD. None of the above答案:C11. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. Both A and BD. None of the above答案:C12. 在Java中,以下哪个选项是正确的泛型类声明?A. public class Box<T> { T t; }B. public class Box { T t; }C. Both A and BD. None of the above答案:A13. Java中,哪个关键字用于声明一个枚举类型?A. enumB. finalC. classD. interface答案:A14. 在Java中,以下哪个选项是正确的异常处理语句?A. try { } catch (Exception e) { }B. catch (Exception e) { } try { }C. Both A and BD. None of the above答案:A15. Java中,哪个关键字用于声明一个同步方法?A. synchronizedB. volatileC. transientD. strictfp 答案:A。
JAVA基础部分测试题及答案
1. 编译java程序的命令是[B] ;运行java程序的命令是[A] ;产生java文挡的命令是[D] ;产生类型归档文件.jar的命令是[F] 。
A. javaB. javacC. serialverD. javadocE. policytoolF. jar2. 在一个java原文件中,import, class, package语句的顺序是[F] 。
A. import class packageB. class import packageC. package class importD. import package classE. class package importF. package import class3. 下面叙述正确的有[CDE] 。
A. 在一个java原文件中只能定义一个classB. 在一个java原文件中只能定义一个interfaceC. 在一个java原文件中可以定义多个classD. 在一个java原文件中可以定义多个interfaceE. 在一个java原文件中可以定义多个class和interfaceF. 在一个java原文件中只能定义public classG. java原文件的前缀一定是所包含类型的名字4. java程序中程序运行入口方法main的签名正确的有[AB] 。
A. public static void main(String args[])B. static public void main(String[] args)C. public void static main(String[] args)D. public void main(String args[])5. java程序中程序入口方法main的参数代表命令行输入参数,命令行参数从[A] 开始。
A. 0B. 1C. -16. 以下属于正确的java注释有[ACD] 。
A. //This is commentB. /*This is commentC. /**This is comment*/D. /*This is comment*/7. 以下能作为class, interface, method或variable有效标识符的有[ADF] 。
java初级试题及答案
java初级试题及答案一、选择题(每题2分,共20分)1. Java语言中的“==”操作符用于比较两个对象的:A. 引用B. 值C. 类型D. 内存地址答案:A2. 下列哪个是Java的关键字?A. classB. functionC. returnD. include答案:A3. 在Java中,哪个关键字用于定义一个类?A. classB. defineC. typeD. structure答案:A4. Java中的main()方法必须定义为:A. public static voidB. private static voidC. public static intD. private static int答案:A5. 下列哪个是Java的访问修饰符?A. publicB. staticC. finalD. abstract答案:A6. Java中的字符串是:A. 可变的B. 不可变的C. 动态的D. 静态的答案:B7. 在Java中,哪个类定义了基本的输入输出流?A. java.io.InputStreamB. java.io.OutputStreamC. java.io.FileInputStreamD. java.io.FileOutputStream答案:A8. Java中的异常处理是通过以下哪个关键字实现的?A. tryB. catchC. finallyD. all of the above答案:D9. 下列哪个是Java集合框架中的接口?A. ArrayListB. ListC. HashMapD. Map答案:B10. Java中的哪个类提供了日期和时间的表示?A. DateB. TimeC. CalendarD. DateTime答案:A二、填空题(每空2分,共20分)1. Java是一种_________语言,它支持跨平台运行。
答案:面向对象2. Java程序的执行入口是_________方法。
java基础考试试题及答案
java基础考试试题及答案一、选择题(每题2分,共20分)1. Java语言属于以下哪一类编程语言?A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案:B2. 下列哪个是Java的关键字?A. classB. functionC. defineD. include答案:A3. Java中,哪个关键字用于定义一个类?A. classB. structC. typeD. interface答案:A4. Java中的main方法必须定义为:A. public static void main(String args[])B. private static void main(String[] args)C. public static void main(String[] args)D. public void main(String args[])答案:A5. 以下哪个是Java的合法标识符?A. 2variableB. variable2C. variable#2D. variable-2答案:B6. Java中,哪个关键字用于实现继承?A. extendsB. inheritC. deriveD. super答案:A7. Java中,哪个关键字用于实现多态?A. overloadB. overrideC. polymorphD. overloading答案:B8. Java中,哪个关键字用于定义接口?A. classB. structC. interfaceD. package答案:C9. Java中,哪个关键字用于定义包?A. packageB. classC. importD. export答案:A10. Java中,哪个关键字用于实现异常处理?A. tryB. catchC. finallyD. all of the above答案:D二、填空题(每空2分,共20分)1. Java是一种________面向对象的编程语言。
java基础笔试题及答案
java基础笔试题及答案1. Java中,下列哪个关键字用于定义一个类?A. classB. interfaceC. abstractD. public答案:A2. 下列哪个选项不是Java语言的基本数据类型?A. intB. floatC. charD. String答案:D3. 在Java中,下列哪个关键字用于抛出一个异常?A. throwB. throwsC. catchD. finally答案:A4. 下列哪个选项是Java中正确的继承关系?A. 类可以继承多个类B. 接口可以继承多个接口C. 类可以实现多个接口D. 接口可以实现类答案:C5. 在Java中,下列哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. public答案:B6. 下列哪个选项是Java中正确的访问修饰符?A. publicB. privateC. protectedD. all of the above答案:D7. 在Java中,下列哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D8. 下列哪个选项是Java中的集合框架?A. ArrayListB. LinkedListC. HashMapD. all of the above答案:D9. 在Java中,下列哪个关键字用于定义一个抽象类?A. abstractB. finalC. staticD. interface答案:A10. 下列哪个选项是Java中正确的多线程实现方式?A. 实现Runnable接口B. 继承Thread类C. 实现Callable接口D. all of the above答案:D11. 在Java中,下列哪个关键字用于定义一个静态方法?A. staticB. finalC. abstractD. synchronized答案:A12. 下列哪个选项是Java中正确的异常处理关键字?A. tryB. catchC. finallyD. all of the above答案:D13. 在Java中,下列哪个关键字用于定义一个私有成员?A. privateB. protectedC. publicD. static答案:A14. 下列哪个选项是Java中正确的集合初始化方式?A. List<String> list = new ArrayList<>();B. List<String> list = new LinkedList<>();C. List<String> list = new HashMap<>();D. all of the above答案:A15. 在Java中,下列哪个关键字用于定义一个同步方法?A. synchronizedB. volatileC. transientD. strictfp答案:A16. 下列哪个选项是Java中正确的泛型声明方式?A. List list = new ArrayList<String>();B. List<String> list = new ArrayList();C. List<String> list = new ArrayList<String>();D. all of the above答案:B17. 在Java中,下列哪个关键字用于定义一个局部变量?A. finalB. staticC. transientD. volatile答案:A18. 下列哪个选项是Java中正确的异常类?A. ExceptionB. ErrorC. ThrowableD. all of the above答案:D19. 在Java中,下列哪个关键字用于定义一个常量?A. finalB. staticC. transientD. volatile答案:A20. 下列哪个选项是Java中正确的集合遍历方式?A. for loopB. while loopC. for-each loopD. all of the above答案:D。
java基础考试试题及答案
java基础考试试题及答案一、选择题1. 在Java中,以下哪个不是访问修饰符?A) publicB) protectedC) privateD) static答案: D2. 下列选项中,不属于Java基本数据类型的是?A) intB) doubleC) booleanD) string答案: D3. Java中的包(package)用于什么目的?A) 控制访问权限B) 组织类和接口C) 定义变量和方法D) 实现多态性答案: B4. 下面关于Java异常处理的说法中,正确的是?A) 所有异常类都必须派生自Throwable类B) 编译时异常必须使用try-catch块捕获C) RuntimeException是编译时异常的子类D) finally块用于捕获异常并处理答案: B5. 在Java中,以下哪个关键字用于终止整个循环?A) breakB) continueC) returnD) exit答案: D二、填空题1. Java中,使用关键字____声明一个类。
答案: class2. Java中,使用关键字____定义一个方法。
答案: void3. Java中,使用关键字____声明一个常量。
答案: final4. Java中,使用关键字____定义一个抽象类。
答案: abstract5. Java中,使用关键字____定义一个接口。
答案: interface三、编程题1. 编写一个Java程序,输出1到100之间所有的偶数。
```javapublic class EvenNumbers {public static void main(String[] args) {for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i);}}}}```2. 编写一个Java程序,计算并输出斐波那契数列的前20个数字。
```javapublic class Fibonacci {public static void main(String[] args) {int num1 = 0, num2 = 1;System.out.println(num1);System.out.println(num2);for (int i = 2; i < 20; i++) {int num3 = num1 + num2;System.out.println(num3);num1 = num2;num2 = num3;}}}```四、简答题1. Java中的封装是什么意思?为什么要封装?答案: 封装是将数据和操作数据的方法包装在一起的机制。
java初级试题及答案
java初级试题及答案一、选择题(每题2分,共10分)1. Java语言的创始人是:A. James GoslingB. Dennis RitchieC. Bjarne StroustrupD. Guido van Rossum答案:A2. 下列哪个选项不是Java语言的特性?A. 平台无关性B. 面向对象C. 编译型语言D. 多线程答案:C3. Java中,用于捕获异常的关键字是:A. tryB. catchC. throwD. finally答案:B4. 下列哪个关键字用于定义接口?A. classB. interfaceC. abstractD. final答案:B5. Java中,用于创建线程的构造方法是:A. run()B. start()C. main()D. execute()答案:B二、填空题(每题2分,共10分)1. Java程序的执行入口是________方法。
答案:main2. Java中,________关键字用于声明一个类。
答案:class3. 在Java中,________关键字用于实现多态。
答案:extends4. Java中,________关键字用于实现接口。
答案:implements5. Java中,________关键字用于声明一个方法。
答案:void三、简答题(每题5分,共20分)1. 请简述Java平台的三个主要组成部分。
答案:Java平台的三个主要组成部分是Java虚拟机(JVM)、Java API和Java语言。
2. 解释Java中的垃圾回收机制。
答案:Java中的垃圾回收机制是指自动回收不再被使用的对象所占用的内存,以避免内存泄漏。
3. 描述Java中集合框架的主要接口。
答案:Java中集合框架的主要接口包括List、Set和Map。
4. 请解释Java中的异常处理机制。
答案:Java中的异常处理机制包括try、catch、finally和throw 关键字,用于捕获和处理程序运行过程中出现的异常。
完整版)Java基础试题及其答案
完整版)Java基础试题及其答案无法确定输出结果,因为代码中缺少输出语句。
1) 正确的main方法格式是public static void main(String[] args)。
2)要使代码编译成功,横线处可以填入(a) (byte) (b1-b2)。
3).db下的类,这个类必须定义为public。
4)不能通过编译的语句是(d) float f=5+5.5.因为5和5.5的数据类型不同,无法进行加法运算。
5)可以把JFrame的布局管理器设为FlowLayout类型的方法是(a) ___())。
6)运行时会产生空指针异常,即(b) ___。
7)可以使用键/值形式保存数据的对象是(c) HashMap。
8)无法确定输出结果,因为代码中缺少输出语句。
14)答案为a。
因为在for循环外面的System.out.print(i)会报错,i的作用域只在for循环内部。
15)答案为b和c。
因为Integer.valueOf(int i)和new Integer(int i)都可以将int类型转换成Integer类型。
16)答案为b。
当对null对象进行操作时,会产生___异常。
17)答案为1.因为indexOf方法返回的是目标字符串在原字符串中第一次出现的位置,从0开始计数,所以5的位置是1.18)答案为b。
在Java中,接口是通过implements关键字来实现的,而不是extends关键字。
所以正确的语句应该是interface A implements B,C。
可以在代码A处加入的代码是(d)tt.jump()。
在JAVA语言中,下面变量命名合法的有(a)variable123和(d)variable_123.给定一段JAVA代码如下:要打印出list中存储的内容,以下语句正确的是(a)while(it.hasNext())system.out.println(it.next())和(b)for(int i=0.i<list.size()。
java基础测试题及答案
一、选择题(每题2分,共40分)1、下面哪个是Java语言中正确的标识符(C )A、3comB、importC、thatD、this2、下面哪个语句(初始化数组)是不正确的:(B)A.int x[] = {1,2,3}; B.int x[3] = {1,2,3};C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3};3、下述概念中不属于面向对象方法的是( D )。
A.对象、消息B.继承、多态C.类、封装D.过程调用4、下面的代码段中,执行之后i 和j 的值是什么? ( B )int i = 1;int j;j = i++*2+3*--i;A.1, 2 B.1, 5 C.2, 1 D.2, 25、下面哪条语句把方法声明为抽象的公共方法?(B )A.public abstract method();B.public abstract void method();C.public abstract void method(){}D.public void method() extends abstract;6、下面关于java中类的说法哪个是不正确的?( C )A.类体中只能有变量定义和成员方法的定义,不能有其他语句。
B.构造函数是类中的特殊方法。
C.类一定要声明为public的,才可以执行。
D.一个java文件中可以有多个class定义。
7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class A{ int i;static String s;void method1() { }static void method2() { }}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2()8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( B )A、CardLayoutB、FlowLayoutC、BorderLayoutD、GridLayout9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C )A.滑块B.进度条C.按钮D.标签10、在Java 中如果要在字符串类型对象s=“JAVA”,中找出‘V’出现的位置可使用下面哪个方法:(B)A.mid(2,s); B.charAt(2); C.s.indexOf(‘V’); D.indexOf(s,’V’);11、Java中哪个类提供了随机访问文件的功能。
Java基础测试题(答案)
1. 有以下程序片段,下列哪个选项不能插入到行1。
( D )1.2.public class Interesting{3.//do sth4. } (只能有一个public修饰的class)A、import java.awt.*;B、package mypackage;C、class OtherClass{ }D、public class MyClass{ }2. 以下哪项是接口的正确定义?( B D )A、interface B{ void print(){};} (接口里的方法都是抽象的,不能有方法体)B、abstract interface B{ void print() ;}C、abstract interface B extends A1,A2 //A1、A2为已定义的接口{ abstract void print(){ };} (同上)D、interface B{ void print();}1.接口可以声明为public(公共)或默认的访问权限。
接口隐含表明是抽象的(abstract)的。
2.接口的方法默认即为public(公共)且是abstract(抽象)的.3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。
接口声明编译器如何解释呢public interface Searchable {}public abstract interface Searchable {} abstract interface Searchable {}abstract interface Searchable {} interface Searchable {}abstract interface Searchable {}void search(String searchString);public abstract void search(String searchString); abstract void search(StringsearchString);public abstract void search(String searchString); public void search(StringsearchString);public abstract void search(String searchString); char MATCH_ONLY_ONE = ‘?’;public static final char MATCH_ONLY_ONE = ‘?’; public char MATCH_ONLY_ONE =‘?’;public static final char MATCH_ONLY_ONE = ‘?’; static MATCH_ONLY_ONE = ‘?’;public static final char MATCH_ONLY_ONE = ‘?’; final char MATCH_ONLY_ONE = ‘?’; public static final charMATCH_ONLY_ONE = ‘?’;final public char MATCH_ONLY_ONE = ‘?’;public static final char MAT CH_ONLY_ONE = ‘?’;3. 下面哪个函数是public void aMethod(){...}的重载函数?( D )A 、void aMethod( ){...}B 、public int aMethod(){...}C 、public void aMethod ( ){...}D 、public int aMethod ( int m){...}(重载:定义同名的方法,方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同)4. A 派生出子类B ,B 派生出子类C ,并且在Java 源代码中有如下声明:1. A a0=new A();2. A a1 =new B();3. A a2=new C();问以下哪个说法是正确的?( D )A、只有第1行能通过编译B、第1、2行能通过编译,但第3行编译出错C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的(A是B的父类,也算是C的父类)5. 假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C ) A a = new A();class A{ int i;static String s;void method1() { }static void method2() { }}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2() ;(A是类名,应该调用对象a)6. 有如下代码段:1)2) { if(unsafe()){//do something…}3) else if(safe()){//do the other…}4) }其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第1行?( D )A、public IOException methodName()B、public void methodName()C、public void methodName() throw IOExceptionD、public void methodName() throws IOException7. Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( C )个比特位。
(完整版)Java基础试题及其答案
Java 试题1) java 程序中,main 方法的格式正确的是()。
(选择一项)a)static void main(String[] args)b)public void main(String[] args)c)public static void main(String[]s)d)public static void main(String[] args)2)给定java 代码,如下:public byte count(byte b1,byte b2){ return ;}要使用这段代码能够编译成功,横线处可以填入()。
(选择一项)a)(byte) (b1-b2) b)(byte) b1-b2c)b1-b2d)(byte) b1/b23)在Java 中,在包com.db 下定义一个类,要让包com.util 下的所有类都可以访问这个类,这个类必须定义为()。
(选择一项)a)protectedb)private c)public d)friendly4)在Java 中,下列()语句不能通过编译。
(选择一项)a)String s= “join”+ “was”+“here”;b)String s= “join”+3;c)int a= 3+5d)float f=5+5.5;5) 在Java 中下列()方法可以把JFrame 的布局管理器设为FlowLayout 类型(选择一项)a)jFrame.setLayout(new FlowLayout() );b) jFrame.addLayout(new FlowLayout() )c)jFrame.setFlowLayout() d)jFrame.addFlowLayout()6)给定java 代码如下,运行时,会产生()类型的异常。
(选择一项)String s=null;s.concat(“abc”);a)ArithmeticException b)NullPointerException c)IOException d)EOFException7) 在java 中,()对象可以使用键/值的形式保存数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 有以下程序片段,下列哪个选项不能插入到行1。
( D )1.class Interesting{3.} (只能有一个public修饰的class)A、import .*;B、package mypackage;C、class OtherClass{ }D、public class MyClass{ }2. 以下哪项是接口的正确定义?( B D )A、 interface B{ void print(){};} (接口里的方法都是抽象的,不能有方法体)B、 abstract interface B{ void print() ;}C、abstract interface B extends A1,A2 口可以声明为public(公共)或默认的访问权限。
接口隐含表明是抽象的(abstract)的。
2.接口的方法默认即为public(公共)且是abstract(抽象)的.3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。
3. 下面哪个函数是public void aMethod(){...}的重载函数?( D )A、void aMethod( ){...}B、public int aMethod(){...}C、public void aMethod ( ){...}D、public int aMethod ( int m){...}(重载:定义同名的方法,方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同)4. A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:1. A a0=new A();2. A a1 =new B();3. A a2=new C();问以下哪个说法是正确的?( D )A、只有第1行能通过编译B、第1、2行能通过编译,但第3行编译出错C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的(A是B的父类,也算是C的父类)5. 假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )A a = new A();class A{ int i;static String s;void method1() { }static void method2() { }}D、() ;(A是类名,应该调用对象a)6. 有如下代码段:1)2) { if(unsafe()){Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( C )个比特位。
byteA、8B、16C、32D、648. 以下关于继承的叙述正确的是( A )。
A、在Java中类只允许单一继承B、在Java中一个类只能实现一个接口(可以实现多个接口)C、在Java中一个类不能同时继承一个类和实现一个接口(可以的)D、在Java中接口只允许单一继承(可以继承多个接口)9. 给出下面代码,关于该程序以下哪个说法是正确的?( C )public class Person{static int arr[] = new int[5];public static void main(String a[]) {}}A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出零D、输出空(输出数组的首地址arr[0],int类型的初始值为0)10. 在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。
A、privateB、protectedC、private protectedD、public (接口只能和public 和abstract关键字连用)11. 编译并运行以下程序,以下描述哪个选项是正确的( D )1. class A{2. protected boolean equals(){3. return ();4. }5. } (只有调用父类非私有属性和方法时才使用到super)A、编译通过运行无异常B、编译通过但运行时出错C、行2出错,不能成功编译D、不能成功编译,行3出错12. 有语句String s=”hello world”; ,以下操作哪个是不合法的?( B )A、int i=();B、s>>>=3;(>>>为无符号右移运算符,去掉“=”号)C、String ts=();D、String t=s+”!”;13. 下列关于Java语言的特点,描述错误的是( C )A.Java是跨平台的编程语言 B.Java支持分布式计算C.Java是面向过程的编程语言(面向对象) D.Java支持多线程14. 下述概念中不属于面向对象方法的是( D )。
A.对象、消息 B.继承、多态 C.类、封装 D.过程调用(过程调用是属于过程方法)15. 结构化程序设计所规定的三种基本控制结构是( C )A.输入、处理、输出 B.树形、网形、环形C.顺序、选择、循环 D.主程序、子程序、函数16. 下列关于构造方法的叙述中,错误的是( C )A.Java语言规定构造方法名与类名必须相同B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用17. 下列哪个类的声明是正确的?( D )A.abstract final class HI{} (final代表常量,但是抽象类不能实例化)B.abstract private move(){} (这是定义方法的)C.protected private number; (不是定义类,且修饰符重复)D.public abstract class Car{}18. 关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C )A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问19. 下列关于for循环和while循环的说法中哪个是正确的?( B )A.while循环能实现的操作,for循环也都能实现B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果C.两种循环任何时候都可替换D.两种循环结构中都必须有循环体,循环体不能为空20. 阅读以下代码:import .*;import .*;public class foo{public static void main (String[] args){String s;}}输出结果应该是:( C )A.代码得到编译,并输出“s=”(代码不能编译通过)B.代码得到编译,并输出“s=null”C.由于String s没有初始化,代码不能编译通过D.代码得到编译,但捕获到 NullPointException异常21. 编译运行以下程序后,关于输出结果的说明正确的是( C ) public class Conditional{public static void main(String args[ ]){int x=4;“value is “+ ((x>4) ? :9));}}A.输出结果为:value is B.输出结果为:value is 9C.输出结果为:value is (判断为false时取“:”后面的值9,又因为有类型,最后值类型也为double)D.编译错误22. 执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的( A )A.x[9]为0B.x[9]未定义(new出数组后未赋值,则系统默认int类型数据为0)C.x[10]为0 (下标越界,数组下标是从0开始的)D.x[0]为空(同B)** 23. 关于以下程序段,正确的说法是( C )1. String s1=“a”+“b”;2. String s2=new String(s1);3. if(s1= =s2)“= = is succeeded”);5. if (s2))“.equals() is succeeded”);A.行4与行6都将执行 B.行4执行,行6不执行C.行6执行,行4不执行 C.行4、行6都不执行24. 以下程序的运行结果是:( C )public class Increment{public static void main(String args[]){int c;c = 2;下列哪一个关键字用于实现接口来定义类?( B )A、extends (继承)B、implements(实现)C、abstract(抽象)D、interface (接口)判断题1 子类不能继承父类的私有成员变量,因此也没有任何办法可以修改父类的私有成员变量。
F2.Java语言包括两类变量:简单变量和引用变量T3.函数重载时,同名函数的参数类型列表必须不同T4.一个类可以选择地实现接口的部分函数.F5. JAVA中的引用变量需要初始化,简单变量可以不进行初始化F6.Java只支持单继承,也就是说子类只能有一个直接父类T。
7.子类可以继承父类的除私有成员以外的其它所有成员。
F8.两个浮点数相除,即使除数为0,也不会出现异常退出。
T9.抽象类不能实例化,也就是说,不能有自己的对象T类是所有其它类的直接或间接父类T1.抽象类可以有构造方法,接口中不能有构造方法。
2.抽象类中可以有普通成员变量,接口中没有普通成员变量3.抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。
4.抽象类中的抽象方法的访问类型可以是public,protected和(默认类型,虽然eclipse 下不报错,但应该也不行),但接口抽象方法只能是public类型的,并且默认即为public abstract类型。
5.抽象类中可以包含静态方法,接口中不能包含静态方法6.抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型。
7.一个类可以实现多个接口,但只能继承一个抽象类。
1、覆盖的方法的标志必须要和被覆盖的方法的标志完全匹配,才能达到覆盖的效果;2、覆盖的方法的返回值必须和被覆盖的方法的返回一致;3、覆盖的方法所抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类;4、被覆盖的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。
1、在使用重载时只能通过不同的参数样式。