java基础笔试题

合集下载

java基础笔试题(答案已整理)

java基础笔试题(答案已整理)

Java基础试题一:选择题(1*30=30)(题目写在答题纸上面)1:Java 提供哪几种运算符多选( abcd )。

A)算术运算符B)位运算符C)关系运算符D)逻辑运算符E)条件运算符2:ng包的()方法比较二个对象是否相等返回true.。

(b)A:toString() B:equals() C:compare D:以上都不正确3:下列对Java 的变量与函数说法正确的是多选(ace )。

A)变量是用来保存数据的B)变量是用来实现操作过程的C)函数是用来实现操作过程的D)函数是用来保存数据的E)函数的参数是数据的入口4:已知:int[] a = new int[100];在下列给出的数组元素中,非法的是。

(d)A:a[0] B:a[1] C:a[99] D:a[100]5:在java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数,类型或顺序各不相同,传值也可以各不相同。

这种面向对象程序的特性称为。

(c)A:隐藏B:覆盖C:重载D:Java不支持此特性6:()是一组常量和抽象方法的集合。

(d)A:实例B:类C:包D:接口7:下面关于数组说法正确的是多选(abcde)。

A)一维数组实质上是相同类型变量的列表B)创建一个数组首先定义数组变量所需的类型C)char c[]=new char[26];可声明一个含有26 个元素的char型数组D)当为一个多维数组的时候分配内存时,仅需要为第一指定内存,然后再分配其他维的存E)int twain[][] = new int[4][5];可声明一个二维数组8:Java源文件和编译后的文件扩展名分别为。

(b)A:.class和.java B:.java各.class C:.class和.class D:.java和.java9:设x=5;则y=x--和y=--x的结果,使y分别为。

(c)A:5,5 B:5,6 C:5,4 D:4,410:若x是float类变量,x=10/4;则x 的值是。

JAVA笔试题--基础很全有答案

JAVA笔试题--基础很全有答案

第一组1.下列不可作为java语言修饰符的是(D)A) a1 B) $1 C) _1 D) 112.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A)A) a1.java B) a1.class C) a1 D) 都对3.整型数据类型中,需要内存空间最少的是(D)A) short B) long C) int D) byte4. Java 类可以作为(C)A) 类型定义机制B) 数据封装机制C) 类型定义机制和数据封装机制D) 上述都不对5.在创建对象时必须(C)A) 先声明对象,然后才能使用对象B) 先声明对象,为对象分配内存空间,然后才能使用对象C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D) 上述说法都对6.在调用方法时,若要使方法改变实参的值,可以(B)A) 用基本数据类型作为参数B) 用对象作为参数C) A和B都对D) A和B都不对7. Java中(C)A) 一个子类可以有多个父类,一个父类也可以有多个子类B) 一个子类可以有多个父类,但一个父类只可以有一个子类C) 一个子类可以有一个父类,但一个父类可以有多个子类D) 上述说法都不对8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B)A) 安全性B) 多线性C) 跨平台D) 可移植9. Character流与Byte流的区别是(C)A) 每次读入的字节数不同B) 前者带有缓冲,后者没有C) 前者是字符读写,后者是字节读写D) 二者没有区别,可以互换使用10.以下声明合法的是( D )A、default String s;B、public final static native int w( )C、abstract double d;D、abstract final double hyperbolicCosine( )11.关于以下application的说明,正确的是( C )1.class StaticStuff2.{3.static int x=10;4.static { x+=5;}5.public static void main(String args[ ])6.{7.System.out.println(“x=”+ x);8.}9.static { x/=3;}10. }A、4行与9行不能通过编译,因为缺少方法名和返回类型B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=5D、编译通过,执行结果为:x=312.关于以下程序代码的说明正确的是( D )1.class HasStatic{2.private static int x=100;3.public static void main(String args[ ]){4.HasStatic hs1=new HasStatic( );5.hs1.x++;6.HasStatic hs2=new HasStatic( );7.hs2.x++;8.hs1=new HasStatic( );9.hs1.x++;10.HasStatic.x- -;11.System.out.println(“x=”+x);12.}13.}A、5行不能通过编译,因为引用了私有静态变量B、10行不能通过编译,因为x是私有静态变量C、程序通过编译,输出结果为:x=103D、程序通过编译,输出结果为:x=10213.以下选项中循环结构合法的是( C )A、while (int i<7){ i++;System.out.println(“i is “+i);}B、int j=3;while(j){System.out.println(“ j is “+j);}C、int j=0;for(int k=0; j + k !=10; j++,k++){System.out.println(“ j is “+ j + “k is”+ k);}D、int j=0;do{System.out.println( “j is “+j++);if (j = = 3) {continue loop;}}while (j<10);14.类Test1定义如下:1.public class Test1{2.public float aMethod(float a,float b){ } 3.4.}将以下哪种方法插入行3是不合法的。

Java基础笔试机试测试题(带答案)

Java基础笔试机试测试题(带答案)

Java基础考试题班级:__________ 姓名:___________ 日期:_____________一、笔试(45题,每题2分)1) 分析下面的Java程序段,编译运行后的输出结果是()。

public class Test {public static void changeString(StringBuffer sb) {sb.append("stringbuffer2");}public static void main(String[] args) {StringBuffer sb = new StringBuffer("stringbuffer1");changeString(sb);System.out.println("sb = " + sb.toString());}}A. sb = stringbuffer2stringbuffer1B. sb = stringbuffer1C. sb = stringbuffer2D. sb = stringbuffer1stringbuffer22) 在Java中,包有多种用途,但不包含()。

A. 将类组合成较小的单元,便于使用B. 有助于避免命名冲突C. 有助于提高运行效率D. 允许在更广的范围内保护类、数据和方法3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。

A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v');4)下列代码运行后,变量c的值是()。

int a=15,b=10;double c=a/b;a) 1.5 b) 1.0 c) 1 d) 05)main方法如下所示,该程序的运行结果是()。

java机试题及答案

java机试题及答案

java机试题及答案【篇一:java基础笔试机试测试题(带答案)】班级:__________姓名:___________ 日期:_____________一、笔试(45题,每题2分)1) 分析下面的java程序段,编译运行后的输出结果是()。

public class test {public static void changestring(stringbuffer sb) {sb.append(stringbuffer2);}public static void main(string[] args) {stringbuffer sb = new stringbuffer(stringbuffer1);changestring(sb);system.out.println(sb = + sb.tostring());}}a. sb = stringbuffer2stringbuffer1b. sb = stringbuffer1c. sb = stringbuffer2d. sb = stringbuffer1stringbuffer22) 在java中,包有多种用途,但不包含()。

a. 将类组合成较小的单元,便于使用b. 有助于避免命名冲突c. 有助于提高运行效率d. 允许在更广的范围内保护类、数据和方法3) 在java中,如果要在字符串类型s=java中,得到字母 v 出现的位置,选()语句。

a)s.matches(v);b)s.charat(v); c)s.indexof(v);d)s.substring(v);4)下列代码运行后,变量c的值是()。

int a=15,b=10;double c=a/b;a) 1.5 b) 1.0 c) 1 d)05)main方法如下所示,该程序的运行结果是()。

public static void main(string [] args){int i=0;system.out.print(i++);}a)输出0 b) 输出1 c)编译错误 d)运行时出现异常1 / 116)使用类的步骤包括以下三步,它们的先后顺序是()。

Java基础笔试机试测试题(带答案)

Java基础笔试机试测试题(带答案)

Java基础考试题班级:__________ 姓名:___________ 日期:_____________一、笔试(45题,每题2分)1) 分析下面的Java程序段,编译运行后的输出结果是()。

public class Test {public static void changeString(StringBuffer sb) {sb.append("stringbuffer2");}public static void main(String[] args) {StringBuffer sb = new StringBuffer("stringbuffer1");changeString(sb);System.out.println("sb = " + sb.toString());}}A. sb = stringbuffer2stringbuffer1B. sb = stringbuffer1C. sb = stringbuffer2D. sb = stringbuffer1stringbuffer22) 在Java中,包有多种用途,但不包含()。

A. 将类组合成较小的单元,便于使用B. 有助于避免命名冲突C. 有助于提高运行效率D. 允许在更广的范围内保护类、数据和方法3) 在Java中,如果要在字符串类型s="java" 中,得到字母'v' 出现的位置,选()语句。

A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v');4)下列代码运行后,变量 c 的值是()。

int a=15,b=10;double c=a/b;a) 1.5 b) 1.0 c) 1 d) 05)main 方法如下所示,该程序的运行结果是()。

Java基础笔试机试测试题带答案

Java基础笔试机试测试题带答案

Java基础考试题班级:__________ 姓名:___________ 日期:_____________一、笔试(45题,每题2分)1) 分析下面的Java程序段,编译运行后的输出结果是()。

public class Test {public static void changeString(StringBuffer sb) {sb.append("stringbuffer2");}public static void main(String[] args) {StringBuffer sb = new StringBuffer("stringbuffer1");changeString(sb);.toString());}}A. sb = stringbuffer2stringbuffer1B. sb = stringbuffer1C. sb = stringbuffer2D. sb = stringbuffer1stringbuffer22) 在Java中,包有多种用途,但不包含()。

A. 将类组合成较小的单元,便于使用B. 有助于避免命名冲突C. 有助于提高运行效率D. 允许在更广的范围内保护类、数据和方法3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。

A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v');4)下列代码运行后,变量c的值是()。

int a=15,b=10;double c=a/b;a) 1.5 b) 1.0 c) 1 d) 05)main方法如下所示,该程序的运行结果是()。

public static void main(String [] args){int i=0;}a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常6)使用类的步骤包括以下三步,它们的先后顺序是()。

Java基础知识笔试题及答案

Java基础知识笔试题及答案

1.Java中提供了名为()的包装类来包装原始字符串类型。

A.IntegerB.CharC.DoubleD.String答案:D2.ng包的()方法比较两个对象是否相等,相等返回true。

A.toString()B.equals()C.compare()D.以上所有选项都不正确答案:B3.使用()方法可以获得Calendar类的实例。

A.get()B.equals()C.getTime()D.getInstance()答案:D4.下面的集合中,()不可以存储重复元素。

A.SetB.CollectionC.MapD.List答案:C5.关于Map和List,下面说法正确的是( )。

A.Map继承ListB.List中可以保存Map或ListC.Map和List只能保存从数据库中取出的数据D.Map的value可以是List或Map答案:D6.给定如下Java代码,编译运行的结果是()。

import java.util.*;public class Test {public static void main(String[] args) { LinkedList list=new LinkedList();list.add(“A”);list.add(2,”B”);String s=(String)list.get(1);System.out.println(s);}}A.编译时发生错误B.运行时引发异常C.正确运行,输出:AD.正确运行,输出:B答案:B7.请写出下列语句的输出结果char[] data={‘a’,'b’,'c’,'d’};System.out.println(String.valueOf(10D)); System.out.println(String.valueOf(3>2)); System.out.println(String.valueOf(data,1,3)); 参考答案:10.0truebcd8.写出下面代码运行后的输出结果是。

java基础入门考试题目及答案

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常见笔试题及答案

Java常见笔试题及答案一、单选择题(每小题2分,共10分)1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。

A. .javaB. .classC. .htmlD. .exe2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。

A. 3B. 3. 5C. 4D. 53、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。

A. start( )B. stop( )C. init( )D. paint( )4、不允许作为类及类成员的访问控制符的是( C )。

A. publicB. privateC. staticD. protected5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。

A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )二、填空题(每空格1分,共20分)1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码、和解释运行字节码。

2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 Applet、类的子类并且存储该源程序文件的文件名为MyApplet。

13、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器javac.exe 编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。

4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用2 字节内存空间。

JAVA笔试题(附答案)

JAVA笔试题(附答案)
4、int和Integer有什么区别
Java提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。
原始类型封装类
booleanBoolean
charCharacter
byteByte
shortShort
5、error和exception有什么区别?
error表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。
exception表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。
6、shorts1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:ABC
9.下列说法错误的有()
A.能被java.exe成功运行的java class文件必须有main()方法
B.J2SDK就是Java API
C.Appletviewer.exe可利用jar选项运行.jar文件
D.能被Appletviewer成功运行的java class文件必须有main()方法
我对于D的理解是这样的:静态的只能访问静态的,非静态的可以访问静态的,也就是说类方法中不能调用实例方法。非要说他错,是不是加了绝对二字。
8.下列说法错误的有()
A.Java面向对象语言容许单独的过程与函数存在
B.Java面向对象语言容许单独的方法存在
C.Java语言中的方法属于类中的成员(member)

公司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初级试题及答案

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基础笔试题及答案

java基础笔试题及答案一、选择题1. 下列哪个关键字可以用来创建线程?A. classB. interfaceC. implementsD. extends答案:D2. Java中的“==”运算符用于比较什么?A. 引用是否相同B. 对象的内容C. 字符串的内容D. 整数的大小答案:A3. 在Java中,哪个类是所有类的根类?A. ObjectB. StringC. IntegerD. System答案:A4. 下列哪个方法用于获取对象的哈希码?A. equals()B. hashCode()C. toString()D. getClass()答案:B5. Java中,哪个关键字用于实现单例模式?A. privateB. publicC. staticD. final答案:C二、简答题1. 解释Java中的垃圾回收机制是什么?答案:Java中的垃圾回收机制是一种自动内存管理功能,它周期性地执行,以识别不再使用的对象,并释放这些对象占用的内存空间。

垃圾回收器会检查内存中的对象,并确定对象是否仍然被应用程序中的其他对象引用。

如果一个对象没有任何引用指向它,那么它就被认为是“垃圾”,垃圾回收器会回收其内存。

2. 什么是Java的异常处理机制?答案:Java的异常处理机制允许程序在发生错误时继续运行,而不是立即崩溃。

它通过使用try、catch、finally和throw关键字来实现。

try块用于捕获可能出现异常的代码,catch块用于处理这些异常,finally块用于执行无论是否发生异常都需要执行的代码,throw关键字用于手动抛出异常。

三、编程题1. 编写一个Java程序,实现一个简单的计算器,能够进行加、减、乘、除操作。

```javaimport java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("请输入第一个数字:");double num1 = input.nextDouble();System.out.print("请输入第二个数字:");double num2 = input.nextDouble();System.out.print("请选择操作(+、-、*、/):"); char operation = input.next().charAt(0);double result;switch (operation) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':if (num2 != 0) {result = num1 / num2;} else {System.out.println("除数不能为0。

Java笔试题目-基础方面

Java笔试题目-基础方面

Java基础方面:1、作用域public,private,protected,以及不写时的区别答:区别如下:作用域当前类同一package 子孙类其他packagepublic √√√√protected √√√×friendly √√××private √×××不写时默认为friendly2、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implement s(实现)interface(接口)答:匿名的内部类是没有名字的内部类。

不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现public class OuterClass {private double d1 = 1.0;//insert code here}You need to insert an inner class declaration at line 3. Which two inner class declarations arevalid?(Choose two.)A. class InnerOne{public static double methoda() {return d1;}}B. public class InnerOne{static double methoda() {return d1;}}C. private class InnerOne{double methoda() {return d1;}}D. static class InnerOne{protected double methoda() {return d1;}}E. abstract class InnerOne{public abstract double methoda();}说明如下:一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。

java笔试题大全带答案

java笔试题大全带答案

java笔试题大全带答案一、选择题1.下列哪个选项是JAVA语言中的基本数据类型?A. IntegerB. BooleanC. StringD. Double答案:B. Boolean2.以下关于JAVA程序的描述中,错误的是:A. JAVA源程序文件的扩展名为.javaB. JAVA虚拟机是JAVA程序的运行环境C. JAVA程序由一个或多个类组成D. JAVA程序的入口函数是main函数答案:C. JAVA程序由一个或多个类组成(应为:JAVA程序由一个类组成)3.以下哪种循环结构可以根据循环条件决定是否执行循环体?A. for循环B. do-while循环C. while循环D. switch循环答案:C. while循环4.以下关于JAVA的面向对象特性的描述中,正确的是:A. 封装是指将数据和操作数据的方法绑定在一起,形成一个类B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为C. 继承是指一个类可以派生出多个子类D. 抽象是指一个类具有实例化对象的能力答案:B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为二、填空题1.下列代码的输出结果是______。

```javaint a = 5;int b = 2;System.out.println(a / b);```答案:22.以下关于JAVA异常处理的语句中,正确的是______。

A. tryB. exceptC. catchD. throw答案:C. catch3.以下哪个关键字声明的方法可以被子类重写?A. finalB. staticC. abstractD. private答案:C. abstract4.以下哪个关键字可以在子类中调用父类的同名方法?A. thisB. superC. extendsD. implements答案:B. super三、编程题请编写一个JAVA程序,实现以下功能:1. 定义一个名为Rectangle的类,包含如下属性和方法:- 属性:宽度(width)、高度(height)- 方法:计算矩形面积(getArea)、计算矩形周长(getPerimeter)2. 在main函数中创建一个Rectangle对象,并计算其面积和周长并打印输出。

java基础笔试题题库及答案

java基础笔试题题库及答案

java基础笔试题题库及答案1. Java中,`int`类型变量默认的初始值是多少?答案:Java中,`int`类型变量默认的初始值是0。

2. 在Java中,`String`类型是可变的还是不可变的?答案:在Java中,`String`类型是不可变的。

3. Java中,`==`和`equals()`方法的区别是什么?答案:在Java中,`==`用于比较两个引用是否指向同一对象(对于基本数据类型是比较值),而`equals()`是一个方法,用于比较对象内容是否相等。

4. Java中,`ArrayList`和`LinkedList`的主要区别是什么?答案:`ArrayList`是基于动态数组实现的,支持快速随机访问;而`LinkedList`是基于双向链表实现的,支持快速的插入和删除操作。

5. Java中,`try-catch-finally`语句块的作用是什么?答案:`try-catch-finally`语句块用于异常处理。

`try`块用于捕获异常,`catch`块用于处理异常,`finally`块用于执行清理操作,无论是否发生异常都会执行。

6. Java中,`HashMap`和`Hashtable`的主要区别是什么?答案:`HashMap`允许键和值为null,是非同步的;而`Hashtable`不允许键和值为null,是同步的。

7. Java中,什么是垃圾回收?它是如何工作的?答案:垃圾回收是Java中自动释放不再使用的对象所占内存的过程。

它通过识别不再被任何引用指向的对象来进行回收。

8. Java中,`synchronized`关键字的作用是什么?答案:`synchronized`关键字用于实现多线程同步,确保同一时间只有一个线程可以访问某个特定的资源或代码段。

9. Java中,`final`关键字可以修饰哪些元素?答案:`final`关键字可以修饰变量、方法和类。

被`final`修饰的变量称为常量,其值在初始化后不能被改变;被`final`修饰的方法不能被重写;被`final`修饰的类不能被继承。

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基础笔试题及答案

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基础笔试题

Java基础笔试题⼀.选择题(共50题,每题2分,共100分。

多选题选不全或选错都不得分。

)1.以下属于⾯向对象的特征的是(C,D)。

(两项)A) 重载B) 重写C) 封装D) 继承解析:⾯向对象的三⼤特性:封装、继承、多态。

2.以下代码运⾏输出是(C)public class Person{private String name=”Person”;int age=0;}public class Child extends Person{public String grade;public static void main(String[] args){Person p = new Child();System.out.println();}}A) 输出:PersonB) 没有输出C) 编译出错D) 运⾏出错解析:⼦类不能直接调⽤⽗类私有成员变量。

3.在使⽤super 和this关键字时,以下描述正确的是(A)A) 在⼦类构造⽅法中使⽤super()显⽰调⽤⽗类的构造⽅法,super()必须写在⼦类构造⽅法的第⼀⾏,否则编译不通过B) super()和this()不⼀定要放在构造⽅法内第⼀⾏C) this()和super()可以同时出现在⼀个构造函数中D) this()和super()可以在static环境中使⽤,包括static⽅法和static语句块4.以下对封装的描述正确的是(D)A) 只能对⼀个类中的⽅法进⾏封装,不能对属性进⾏封装B) 如果⼦类继承了⽗类,对于⽗类中进⾏封装的⽅法,⼦类仍然可以直接调⽤C) 封装的意义不⼤,因此在编码时尽量不要使⽤D) 封装的主要作⽤在于对外隐藏内部实现细节,增强程序的安全性5.以下对继承的描述错误的是(A)A) Java中的继承允许⼀个⼦类继承多个⽗类B) ⽗类更具有通⽤性,⼦类更具体C) Java中的继承存在着传递性D) 当实例化⼦类时会递归调⽤⽗类中的构造⽅法6.以下程序的运⾏结果是(D)class Person{public Person(){System.out.println(“this is a Person”);}}public class Teacher extends Person{private String name=”tom”;public Teacher(){System.out.println(“this is a teacher”);super();}public static void main(String[] args){Teacher teacher = new Teacher();System.out.println();}}A) this is a Personthis is a teachertomB) this is a teacherthis is a PersontomC) 运⾏出错D) 编译有两处错误7.以下说法错误的是()A) super.⽅法()可以调⽤⽗类的所有⾮私有⽅法B) super()可以调⽤⽗类的所有⾮私有构造函数C) super.属性可以调⽤⽗类的所有⾮私有属性D) this和super关键字可以出现在同⼀个构造函数中8.以下关于final关键字说法错误的是(A,C)(两项)A) final是java中的修饰符,可以修饰类、接⼝、抽象类、⽅法和属性B) final修饰的类肯定不能被继承C) final修饰的⽅法不能被重载D) final修饰的变量不允许被再次赋值9.访问修饰符作⽤范围由⼤到⼩是(D)A) private-default-protected-publicB) public-default-protected-privateC) private-protected-default-publicD) public-protected-default-private10.以下(D)不是Object类的⽅法A) clone()B) finalize()C) toString()D) hasNext()11.多态的表现形式有(A)A) 重写B) 抽象C) 继承D) 封装12.以下对重载描述错误的是(B)A) ⽅法重载只能发⽣在⼀个类的内部B) 构造⽅法不能重载C) 重载要求⽅法名相同,参数列表不同D) ⽅法的返回值类型不是区分⽅法重载的条件13.以下(D)添加到ComputerBook中不会出错class Book{protected int getPrice(){return 30;}}public class ComputerBook extends Book{}A) protected float getPrice(){}B) protected int getPrice(int page){}C) int getPrice(){}D) public int getPrice(){return 10;}14.以下对抽象类的描述正确的是(C)A) 抽象类没有构造⽅法B) 抽象类必须提供抽象⽅法C) 有抽象⽅法的类⼀定是抽象类D) 抽象类可以通过new关键字直接实例化15.以下对接⼝描述错误的有(D)A) 接⼝没有提供构造⽅法B) 接⼝中的⽅法默认使⽤public、abstract修饰C) 接⼝中的属性默认使⽤public、static、final修饰D) 接⼝不允许多继承16.以下代码,描述正确的有(A)interface IDemo{public static final String name;1void print();2public void getInfo();3}abstract class Person implements IDemo{4public void print(){}}A) 第1⾏错误,没有给变量赋值B) 第2⾏错误,⽅法没有修饰符C) 第4⾏错误,没有实现接⼝的全部⽅法D) 第3⾏错误,没有⽅法的实现17.接⼝和抽象类描述正确的有(B,C)(两项)A) 抽象类没有构造函数B) 接⼝没有构造函数C) 抽象类不允许多继承D) 接⼝中的⽅法可以有⽅法体18.以下描述错误的有(C)A) abstract 可以修饰类、接⼝、⽅法B) abstract修饰的类主要⽤于被继承C) abstract 可以修饰变量D) abstract修饰的类,其⼦类也可以是abstract修饰的19.以下描述正确的有(B)A) ⽅法的重写应⽤在⼀个类的内部B) ⽅法的重载与返回值类型⽆关C) 构造⽅法不能重载D) 构造⽅法可以重写20.以下程序运⾏结果是(A)public class Test extends Father{private String name=”test”;public static void main(String[] args){Test test = new Test();System.out.println(test.getName());}}class Father{private String name=”father”;public String getName() {return name;}}A) fatherB) testC) 编译出错D) 运⾏出错,⽆输出21.以下对异常的描述不正确的有(C)A) 异常分为Error和ExceptionB) Throwable是所有异常类的⽗类C) Exception是所有异常类⽗类D) Exception包括RuntimeException和RuntimeException之外的异常22.在try-catch-finally语句块中,以下可以单独与finally⼀起使⽤的是(B)A) catchB) tryC) throwsD) throw23.下⾯代码运⾏结果是(B)public class Demo{public int add(int a,int b){try{return a+b;}catch(Exception e){System.out.println(“catch 语句块”);}finally{System.out.println(“finally 语句块”);}return 0;}public static void main(String[] args){Demo demo = new Demo();System.out.println(“和是:”+demo.add(9,34));}}A) 编译异常B) finally语句块和是:43C) 和是:43 finally语句块D) catch语句块和是:4324.以下描述不正确的有(D)A) try块不可以省略B) 可以使⽤多重catch块C) finally块可以省略D) catch块和finally块可以同时省略25.以下对⾃定义异常描述正确的是(C)A) ⾃定义异常必须继承ExceptionB) ⾃定义异常可以继承⾃ErrorC) ⾃定义异常可以更加明确定位异常出错的位置和给出详细出错信息D) 程序中已经提供了丰富的异常类,使⽤⾃定义异常没有意义26.以下程序运⾏结果是(D)public class Test {public int div(int a, int b) {try {return a / b;}catch(Exception e){System.out.println(“Exception”);}catch(NullPointerException e){System.out.println(“ArithmeticException”);}catch (ArithmeticException e) {System.out.println(“ArithmeticException”);} finally {System.out.println(“finally”);}return 0;}public static void main(String[] args) {Test demo = new Test();System.out.println(“商是:” + demo.div(9, 0));}}A) Exception finally 商是:0B) ArithmeticException finally 商是:0C) finally商是:0D) 编译报错解析:在写异常处理的时候,⼀定要把异常范围⼩的放在前⾯,范围⼤的放在后⾯,Exception这个异常的根类⼀定要放在最后⼀个catch⾥⾯。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java 基础试题一:选择题()1:Java 提供哪几种运算符多选( ABCD )。

A)算术运算符B)位运算符C)关系运算符 D )逻辑运算符E)条件运算符2:ng 包的(B)方法比较二个对象是否相等返回true. 。

()A:toString() B:equals() C:compare D: 以上都不正确3:下列对Java 的变量与函数说法正确的是多选ACE )A)变量是用来保存数据的B)变量是用来实现操作过程的C)函数是用来实现操作过程的D)函数是用来保存数据的E)函数的参数是数据的入口4:已知:int[] a = new int[100]; 在下列给出的数组元素中,非法的是。

( D )A:a[0] B:a[1] C:a[99] D:a[100]5:在java 中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数,类型或顺序各不相同,传值也可以各不相同。

这种面向对象程序的特性称为。

(C)A:隐藏B:覆盖C:重载D:Java 不支持此特性6:(D )是一组常量和抽象方法的集合。

A:实例B:类C:包D:接口7:下面关于数组说法正确的是多选(ABCDE)。

A)一维数组实质上是相同类型变量的列表B)创建一个数组首先定义数组变量所需的类型C)char c[]=new char[26]; 可声明一个含有26 个元素的char 型数组D)当为一个多维数组的时候分配内存时,仅需要为第一指定内存,然后再分配其他维的存E)int twain[][] = new int[4][5]; 可声明一个二维数组8:Java 源文件和编译后的文件扩展名分别为。

(B)A:.class 和.java B:.java 各.class C:.class 和.class D:.java和.java9:设x=5; 则y=x-- 和y=--x 的结果,使y 分别为。

(C)A:5,5B:5,6 C:5,4 D:4,410 :若x 是float 类变量,x=10/4; 则x 的值是。

(B)A:2 B:2.0 C:2,5 D: 编译错误11:.下面方法中,用于调度线程使其运行的是?多选(BC )A. init() B. start()C. run()D. resume()E. sleep()12.下面哪种情况能实现自动转换多选(ACE )。

A)byte 型转换成int 型B)int 型转换成byte 型C)float 型转换成double 型 D )double 型转换成int 型E)char 型转换成int 型13:下列那些是正确的JAVA字符串?多选(AB D )。

A. "\"\""B. "Oxzabc"C. "\"\"D. "\t\t\r\n"E. "boolean"514 :在使用super 和this 关键字时,以下描述正确的是。

(A)A::在子类构造方法中使用super()显示调用父类的构造方法,super ()必须写在子类构造方法的第一行,否则编译不通过B:super ()和this ()不一定要放在构造方法内第一行C:this ()和super ()可以同时出现在一个构造函数中D:this ()和super ()可以在static 环境中使用,包括static 方法和static 语句块15 :以下对封装的描述正确的是。

(D)A:只能对一个类中的方法进行封装,不能对属性进行封装B:如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用C:封装的意义不大,因此在编码时尽量不要使用D:封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性16 :以下对继承的描述错误的。

(A)A:Java 中的继承允许一个子类继承多个父类B:父类更具有通用性,子类更具体C:Java 中的继承存在着传递性D:当实例化子类时会递归调用父类中的构造方法17 :以下关于final 关键字说法错误的是( A.C)(两项)A:final 是java 中的修饰符,可以修饰类、接口、抽象类、方法和属性B:final 修饰的类肯定不能被继承C:final 修饰的方法不能被重载D:final 修饰的变量不允许被再次赋值18 :访问修饰符作用范围由大到小是。

(D)A :private-default-protected-publicB :public-default-protected-privateC :private-protected-default-publicD :public-protected-default-private19:以下()不是Object 类的方法。

(D )A:clone ()B:finalize ()C:toString () D :hasNext ()20 :多态的表现形式有。

(A)A:重写B:抽象C:继承 D :封装21 :以下对重载描述错误的是。

(B)A:方法重载只能发生在一个类的内部B:构造方法不能重载C:重载要求方法名相同,参数列表不同 D :方法的返回值类型不是区分方法重载的条件22 :以下对接口描述错误的有。

(D)A:接口没有提供构造方法B:接口中的方法默认使用public 、abstract 修饰C:接口中的属性默认使用public 、static 、final 修饰 D :接口不允许多继承23 :以下对自定义异常描述正确的是。

(C)A:自定义异常必须继承Exception B:自定义异常可以继承自ErrorC:自定义异常可以更加明确定位异常出错的位置和给出详细出错信息D:程序中已经提供了丰富的异常类,使用自定义异常没有意义24:在Java 中,下面对于构造函数的描述正确的是。

(D)A:类必须显示定义构造函数B:构造函数的返回类型是voidC:构造函数和类有相同的名称,并且不能带任何参数D:一个类可以定义多个构造函数25 :根据下面的代码,String s = null; 会抛出NullPointerException 异常的有(AC)。

[两项]A:if( (s!=null) & (s.length()>0) ) B:if( (s!=null) & & (s.length()>0) )C:if( (s==null) | (s.length()==0) ) D :if( (s==null) ||(s.length()==0) )26 :下列选项中关于java 中super 关键字的说法错误的是。

(B)A:super 关键字是在子类对象内部指代其父类对象的引用B:super 关键字不仅可以指代子类的直接父类,还可以指代父类的父类C:子类可以通过super 关键字调用父类的方法D :子类可以通过super 关键字调用父类的属性27 :下列声明哪个是错误的。

(B)A :int i = 10 ;B:float f = 1.1 ;C:double d = 34.4 ;D :long m = 4990 ;28 :关于抽象类的说法正确的是(B)A:抽象类中一定包含抽象方法,否则是错误B:包含抽象方法的类一定是抽象类C:抽象方法可以没有方法体,也可以有方法体 D :抽象类的子类一定不是抽象类29:所有类的基类。

(A)A :ng.Object B :ng.Class C java.applet.Applet D:java.awt.Frame30 :关于String 和StringBuffer 下面说法正确的是( A)A:String 操作字符串不改变原有字符串的内容B:StringBuffer 连接字符串速度没有String 快 C :String 可以使用append方法连接字符串D:StringBuffer 在java.util 包中二:简答题()1:面向对象的特点?1. 信息隐藏和封装特性:3.组合特性4.动态特性:抽象,多态2:JDK 是什么?Java 开发工具包3: :数组有没有length() 这个方法?String 有没有length() 这个方法?没有,有4:Overload 和Override 的区别。

Overloaded 的方法是否可以改变返回值的类型?答:方法的重写Overriding 和重载Overloading 是Java 多态性的不同表现。

重写Overriding 是父类与子类之间多态性的一种表现,重载Overloading 是一个类中多态性的一种表现。

如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding) 。

子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。

如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading) 。

Overloaded 的方法是可以改变返回值的类型。

5:error 和exception 的区别答:error 表示恢复不是不可能但很困难的情况下的一种严重问题。

比如说内存溢出。

不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。

也就是说,它表示如果程序运行正常,从不会发生的情况。

6:abstract class 和interface 有什么区别?(抽象类与接口的区别) 答:声明方法的存在而不去实现它的类被叫做抽象类 ( abstract class ),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。

不能创建abstract 类的实例。

然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。

不能有抽象构造函数或抽象静态方法。

Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。

取而代之,在子类中实现该方法。

知道其行为的其它类可以在类中实现这些方法。

接口( interface )是抽象类的变体。

在接口中,所有方法都是抽象的。

多继承性可通过实现这样的接口而获得。

接口中的所有方法都是抽象的,没有一个有程序体。

接口只可以定义static final 成员变量。

接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。

当类实现特殊接口时,它定义 (即将程序体给予) 所有这种接口的方法。

然后,它可以在实现了该接口的类的任何对象上调用接口的方法。

由于有抽象类,它允许使用接口名作为引用变量的类型。

通常的动态联编将生效。

引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

7:简述逻辑操作(&,|)与条件操作(&&,||)的区别?答:|如果前面满足条件,就不用判断后面的类容&& 如果前面不满足条件。

相关文档
最新文档