java基础笔试题(答案已整理)
java基础笔试题(答案已整理)
java基础笔试题(答案已整理) Java基础试题一、选择题(1*30=30)1.Java提供哪几种运算符?(多选)A)算术运算符 B)位运算符 C)关系运算符 D)逻辑运算符 E)条件运算符ng包的哪个方法比较两个对象是否相等返回true?(b)A: toString() B: equals() C: compare() D: 以上都不正确3.下列对Java的变量与函数说法正确的是?(多选)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.下面关于数组说法正确的是?(多选)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的值是?(b)A: 2 B: 2.0 C: 2,5 D: 编译错误11.下面方法中,用于调度线程使其运行的是?(多选)A。
java笔试题答案解析详解
java笔试题以及答案详解一一、单项选择题1.Java是从()语言改进重新设计。
A.Ada B.C++ C.Pasacal D.BASIC答案:B2.下列语句哪一个正确()A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的选项有()A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。
4.提供Java存取数据库能力的包是()A.java.sql B.java.awt C.ng D.java.swing 答案:A5.下列运算符合法的是()A.&& B.<> C.if D.:=答案:A详解:6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()A.0 B.1 C.-1 D.死循环答案:C详解:7.下列哪一种叙述是正确的()A. abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D详解:8.下列语句正确的是()A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A详解:9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有()A.类(Class) B.Applet C.Application D.ServletJava程序的种类有:1、内嵌于web文件中,由浏览器来观看的Applet2、可独立运行的Application3、服务器端的Servlet2.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括 class path C. javac一次可同时编译数个Java源文件D. javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD3.下列标识符不合法的有()A.new B.$Usdollars C.1234 D.car.taxi答案:ACD解释:4.下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C. int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变答案:BCD解释:5.不能用来修饰interface的有()A.private B.public C.protected D.static答案:ACD解释:6.下列正确的有()A. call by value不会改变实际参数的数值B. call by reference能改变实际参数的参考地址C. call by reference不能改变实际参数的参考地址D. call by reference能改变实际参数的内容答案:ACD7.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:CD解释:8.下列说法错误的有()A. Java面向对象语言容许单独的过程与函数存在B. Java面向对象语言容许单独的方法存在C. Java语言中的方法属于类中的成员(member)D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC解释:9.下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B. J2SDK就是Java APIC. Appletviewer.exe可利用jar选项运行.jar文件D.能被 Appletviewer成功运行的java class文件必须有main()方法答案:BCD解释:三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。
java笔试题以及答案
java笔试题以及答案详解一、单项选择题 1.Java是从()语言改进重新设计。
A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。
package net.study;public class TestConStructor{public TestConStructor(){System.out.println("constructor");}public void TestConStructor(){System.out.println("not constructor");}public static void main(String[] args){TestConStructor testConStructor = new TestConStructor();System.out.println("main");testConStructor.TestConStructor();}} 4.提供Java存取数据库能力的包是() A.java.sql B.java.awt C.ng D.java.swing 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A详解:java 中没有<> := 这种运算符, if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环 答案:C详解:Do while 中的语句是至少要执行一次的。
java笔试题带答案
JA V A笔试题带答案一.选择题1.下面关于Java语言说法错误的是:()A.java语言是完全面向对象的B。
java语言支持多继承C.java语言支持多线程D。
java语言最早是为消费电子产品领域设计的2.下面标识符中正确的是:()A.*123 B。
12java C.continue D。
java$next3.下列关于注释语句的描述中,正确的一项是()A。
以//开始的是多行注释语句B。
以结束的是单行注释语句C。
以结束的是可以用于生成帮助文档的注释语句D。
以结束的是单行注释语句4.为了区分重载多态中同名的不同方法,要求()。
A)形式参数个数或者类型不同B)返回值类型不同C)调用时用类名或对象名做前缀D)形式参数名称不同5.下面定义数组的格式中正确的是:()A.int a[10] B。
int a=new int[10] C.int []a=new int[5] D.int a[]6.下面说法中不正确的是:()A.类是对象的抽象,对象是类的实例B。
类是组成java程序的最小的单位C.java语言支持多继承D。
java一个程序中只能有一个public类7.定义类时,不可能用到的保留字是()。
A)private B)classC)extends D)implements8.为AB 类的定义一个公共的构造函数,该方法头的形式为()A.void AB( ) B。
public void method( )C.public method ( ) D。
public AB( )9.下面说法中不正确的是:()A.java中一个类只允许实现一个接口B。
抽象类中允许有非抽象方法的存在C.类变量(实例变量)可以直接用类名调用D。
通过super可以调用基类的构造函数10.容器JFrame 默认使用的布局编辑策略是()A.BorderLayout B。
FlowLayout C。
GridLayout D。
CardLayout11.以下哪个表达式是不合法的()A.String x=”Hello”; int y=9; x+=y;B.String x=”Hello”; int y=9; if(x= =y) { }C.String x=”Hello”; int y=9; x=x+y;D.String x=null; int y=(x!=null)&&(x.length()>0)12.class person{public int addvalue(int a,int b){int s;s=a+b;return s;}}class child extends parent{}若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue 方法头的描述哪个是正确的:A)int addvalue(int I,int j) B)void addvalue()C)void addvalue(double i) D)int addvalue(int a)13.下面程序在fun()方法当出现数组下标超过界限的情况下的输出结果是:()public void test(){try{fun();System.out.print(“情况1”);}catch(ArrayIndexOutOfBoundsException e){ System.out.print(“情况2”);}catch(Exception e){ System.out.print(“情况3”);}finally{ System.out.print(“finally”);}}A.情况1 B。
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笔试题_附答案版
一:单选题1.下列哪一种叙述是正确的(D)A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住没有body部分C.声明抽象方法,大括号可有可无不存在bodyD.声明抽象方法不可写出大括号2.如下代码public class Test {public int aMethod() {static int i = 0;i++;return i;}public static void main (String args[]) {Test test = new Test();test.aMethod();int j = test.aMethod();System.out.println(j);}}输出结果是什么?DA. 0B. 1C. 2D.编译失败3.下列哪种说法是正确的(D)A.实例方法可直接调用超类的实例方法如果超类没有被重写就可以B.实例方法可直接调用超类的类方法有可能是私有方法不可以调用C.实例方法可直接调用其他类的实例方法不可以D.实例方法可直接调用本类的类方法4.在Servlet处理请求的方式为:CA.以进程的方式B.以程序的方式C.以线程的方式Servlet容器默认是采用单实例多线程的方式处理多个请求的:D.以响应的方式5.JDBC中,用于表示数据库连接的对象是:BA.Statement连接的实例,执行sqlB.Connection建立与数据库的连接C.DriverManager该方法将建立与数据库的连接D.PreparedStatement6.用于调用存储过程的对象是:CA.ResultSet返回结果集B.DriverManagerC.CallableStatemetD.PreparedStatement PreparedStatement代替Statement.7.按照MVC设计模式,JSP用于实现:BA.ModelB.ViewC.ControllerD.容器8.如下代码10. public Object m() {11. Object o = new Float(3.14F);12. Object [] oa = new Object[1];13. oa[0] = o;14. o = null;15. oa[0] = null;16. print 'return 0';17. }当Float对象在第11行被创建后, 什么时候能够被垃圾回收?CA. 13行以后.B. 14行以后.C. 15行以后.D. 16行以后.9.如下代码:class Base {Base() { System.out.print("Base"); }}public class Alpha extends Base {public static void main( String[] args ) {new Alpha(); -----调用父类无参的构造方法new Base();}}结果是什么?BA. BaseB. BaseBaseC. 编译失败.D. 代码运行但没有输出.E. 运行时抛出异常10.在J2EE中属于Web层的组件有:AA.ServletB.EJBC.AppletD.HTML11.在Servlet的生命周期中,容器只调用一次的方法是:CA.serviceB.getServletConfigC.initD.destroy12.以下关于异常的说法正确的是:DA. 一旦出现异常,程序运行就终止了非系统异常仍然可以继续运行B. 如果一个方法申明将抛出某个异常,它就必须真的抛出那个异常不一定C. 在catch子句中匹配异常是一种精确匹配exceptionD. 可能抛出系统异常的方法是不需要申明异常的13.如下代码:public class Foo {public static void main(String[] args) {try {return;} finally {System.out.println( "Finally" );}}}输出结果是什么?AA. FinallyB.编译失败C. 代码正常运行但没有任何输出.D. 运行时抛出异常14. jsp指令中isELIgnored="boolean"的意思是(C)A.决定是否实现Servler的单线程模式,B.决定改页面是否是一个错误处理页面,C.决定是否支持EL表示,D.没有具体的含义。
(完整版)Java基础试题和答案
(完整版)Java基础试题和答案Java 试题1)java 程序中,main 方法的格式正确的是()。
(选择一项)a)staticvoidmain(String[]args)b)publicvoidmain(String[]args)c)publicstaticvoidmain(String[]s)d)publicstaticvoidmain(String[]args)2)给定java 代码,如下:publicbytecount(byteb1,byteb2){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)Strings=“join”+“was”+“here”;b)Strings=“join”+3;c)inta=3+5d)floatf=5+5.5;5)在Java 中下列()方法可以把JFrame 的布局管理器设为FlowLayout 类型(选择一项)a)jFrame.setLayout(newFlowLayout()); b)jFrame.addLayout(newFlowLayout())c)jFrame.setFlowLayout()d)jFrame.addFlowLayout()6)给定java 代码如下,运行时,会产生()类型的异常。
(选择一项)Strings=null;s.concat(“abc”);a)ArithmeticException b)NullPointerException c)IOException d)EOFException7)在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基础笔试题题库及答案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基础考试题班级:__________姓名:___________日期:_____________一、笔试(45题,每题2分)1) 分析下面的Java程序段,编译运行后的输出结果是()。
publicclassTest{publicstaticvoidchangeString(StringBuffersb){sb.append("stringbuffer2");}publicstaticvoidmain(String[]args){StringBuffersb=newStringBuffer("stringbuffer1");changeString(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的值是()。
inta=15,b=10;doublec=a/b;a)1.5b)1.0c)1d)05)main方法如下所示,该程序的运行结果是()。
publicstaticvoidmain(String[]args){inti=0;}a)输出0b)输出1c)编译错误d)运行时出现异常6)使用类的步骤包括以下三步,它们的先后顺序是()。
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笔试题答案详解
j a v a笔试题答案详解内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)java笔试题以及答案详解一一、单项选择题1.Java是从()语言改进重新设计。
A.Ada B.C++ C.Pasacal D.BASIC答案:B2.下列语句哪一个正确()A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的选项有()A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C?详解:? 见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。
4.提供Java存取数据库能力的包是()A. B. C. D.答案:A5.下列运算符合法的是()A.&& B.<> C.if D.:=答案:A详解:6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()A.0 B.1 C.-1 D.死循环答案:C7.下列哪一种叙述是正确的()A. abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D详解:8.下列语句正确的是()A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A详解:9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、多项选择题1.Java程序的种类有()A.类(Class) B.Applet C.Application D.ServletJava程序的种类有:1、内嵌于web文件中,由浏览器来观看的Applet2、可独立运行的Application3、服务器端的Servlet2.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括 class pathC. javac一次可同时编译数个Java源文件D.能指定编译结果要置于哪个目录(directory)答案:BCD3.下列标识符不合法的有()A.new B.$Usdollars C.1234 D.答案:ACD解释:4.下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C. int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变答案:BCD解释:5.不能用来修饰interface的有()A.private B.public C.protected D.static答案:ACD6.下列正确的有()A. call by value不会改变实际参数的数值B. call by reference能改变实际参数的参考地址C. call by reference不能改变实际参数的参考地址D. call by reference能改变实际参数的内容答案:ACD7.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:CD解释:8.下列说法错误的有()A. Java面向对象语言容许单独的过程与函数存在B. Java面向对象语言容许单独的方法存在C. Java语言中的方法属于类中的成员(member)D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC解释:9.下列说法错误的有()A.能被成功运行的java class文件必须有main()方法B. J2SDK就是Java APIC.可利用jar选项运行.jar文件D.能被 Appletviewer成功运行的java class文件必须有main()方法答案:BCD解释:三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。
JAVA基础考试题及答案
4. point x 处的哪些声明是句法上合法的? (多选题) class Person { private int a; public int change(int m){ return m; } } public class Teacher extends Person { public int b; public static void main(String 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.change(30); E. i = t.b. D,E 分析 A:m 没有被声明过,不能使用。 B:虽然 b 是类 Teacher 的 public 成员变量,但是在静态方法中不能使 用类中的非静态成员。 C:a 是类 Person 的 private 成员,在类外不能直接引用。 D:change(int 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 答案
java基础笔试整理_含答案版本
重要的问题1、说说&和&&的区别答:&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null&& !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常。
If(x==33 & ++y>0) y会增长,If(x==33 && ++y>0)不会增长&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x012、char型变量中能不能存贮一个中文汉字?为什么?答:char型变量是用来存储Unicode编码的字符的,unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦。
不过,如果某个特殊的汉字没有被包含在unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。
补充说明:unicode编码占用两个字节,所以,char类型的变量也是占用两个字节。
3、"=="和equals方法究竟有什么区别答:(单独把一个东西说清楚,然后再说清楚另一个,这样,它们的区别自然就出来了,混在一起说,则很难说清楚)==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。
Java笔试题(基础知识)
Java笔试题:Java基础概念(附答案)一、Java笔试题·单项选择题1.Java是从()语言改进重新设计。
A.Ada B.C++ C.Pasacal D.BASIC答案:B2.下列语句哪一个正确()A.Java程序经编译后会产生machine codeB.Java程序经编译后会产生byte codeC.Java程序经编译后会产生DLLD.以上都不正确答案:B3.下列说法正确的有()A.class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行D.一个class只能定义一个constructor答案:C4.提供Java存取数据库能力的包是()A.java.sql B.java.awt C.ng D.java.swing答案:A5.下列运算符合法的是()A.&& B.<> C.if D.:=答案:A6.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()A.0 B.1 C.-1 D.死循环答案:C7.下列哪一种叙述是正确的()A.abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号答案:D8.下列语句正确的是()A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰C.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象答案:A9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法答案:D二、Java笔试题·多项选择题1.Java程序的种类有()A.类(Class)B.Applet C.Application D.Servlet 2.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括class path C.javac一次可同时编译数个Java源文件D.javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD3.下列标识符不合法的有()A.new B.$Usdollars C.1234 D.car.taxi答案:ACD4.下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C.int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变答案:BCD5.不能用来修饰interface的有()A.private B.public C.protected D.static答案:ACD6.下列正确的有()A.call by value不会改变实际参数的数值B.call by reference能改变实际参数的参考地址C.call by reference不能改变实际参数的参考地址D.call by reference能改变实际参数的内容答案:ACD7.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法答案:ACD8.下列说法错误的有()A.Java面向对象语言容许单独的过程与函数存在B.Java面向对象语言容许单独的方法存在C.Java语言中的方法属于类中的成员(member)D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同答案:ABC9.下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B.J2SDK就是Java APIC.Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法答案:BCD三、Java笔试题·判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。
(完整版)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 中,()对象可以使用键/值的形式保存数据。
JAVA基础知识笔试题及答案
do{ c=d/16; //判断是否大于 10,如果大于 10,则转换为 A-F 的格式 m[i++]=change(d%16); d=c; }while(c>=16); x=change(d); for(int j=m.length-1;j>=0;j–){ x+=m[j]; } } return x; } //判断是否为 10-15 之间的数,如果是则进行转换 public static String change(int d){ String x=”"; switch(d){ case 10: x=”A”; break; case 11: x=”B”; break; caseln(String.valueOf(10D)); System.out.println(String.valueOf(3>2)); System.out.println(String.valueOf(data,1,3)); 参考答案: 10.0 true bcd 8.写出下面代码运行后的输出结果是。 public class Arrtest { public static void main(String kyckling[]){ int i[ ] = new int[5]; System.out.println(i[4]); amethod(); Object obj[ ] = new Object[5]; System.out.println(obj[2]); } public static void amethod(){ int K[ ] = new int[4]; System.out.println(K[3]); } } 参考答案: 0 0
5.关于 Map 和 List,下面说法正确的是( )。 A.Map 继承 List B.List 中可以保存 Map 或 List C.Map 和 List 只能保存从数据库中取出的数据 D.Map 的 value 可以是 List 或 Map 答案:D 6.给定如下 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.正确运行,输出:A D.正确运行,输出:B 答案:B 7.请写出下列语句的输出结果 char[] data={‘a’,'b’,'c’,'d’};
Java基础笔试题及答案
Java基础笔试题及答案Java基础笔试题及答案一.选择题(共50题,每题2分,共100分。
多选题选不全或选错都不得分。
)1.以下属于面向对象的特征的是(C,D)。
(两项)A)重载B)重写C)封装D)继承2.以下代码运行输出是(C)publicclassPerson{privateStringname=”Person”;intage=0;}publicclassChildextendsPerson{publicStringgrade;publicstaticvoidmain(String[]args){Personp=newChild();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)classPerson{publicPerson(){System.out.println(“thisisaPerson”); }}publicclassTeacherextendsPerson{ privateStringname=”tom”; publicTeacher(){System.out.println(“thisisateacher”); super();}publicstaticvoidmain(String[]args){ Teacherteacher=newTeacher();System.out.println();}}A)thisisaPersonthisisateachertomB)thisisateacherthisisaPersontomC)运行出错D)编译有两处错误7.以下说法错误的是()A)super.方法()可以调用父类的所有非私有方法B)super()可以调用父类的所有非私有构造函数C)super.属性可以调用父类的所有非私有属性D)this和super关键字可以出现在同一个构造函数中8.以下关于final关键字说法错误的是(A,C)(两项)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中不会出错classBook{protectedintgetPrice(){return30;}}publicclassComputerBookextendsBook{}A)protectedfloatgetPrice(){}B)protectedintgetPrice(intpage){}C)intgetPrice(){}D)publicintgetPrice(){return10;}14.以下对抽象类的描述正确的是(C)A)抽象类没有构造方法B)抽象类必须提供抽象方法C)有抽象方法的类一定是抽象类D)抽象类可以通过new关键字直接实例化15.以下对接口描述错误的有(D)A)接口没有提供构造方法B)接口中的方法默认使用public、abstract修饰C)接口中的属性默认使用public、static、final修饰D)接口不允许多继承。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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 的值是。
(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字符串?多选(abd )。
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关键字说法错误的是(ac)(两项)A:final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性B:final修饰的类肯定不能被继承C:final修饰的方法不能被重载D:final修饰的变量不允许被再次赋值18:访问修饰符作用范围由大到小是。
(d)A:private-default-protected-public B:public-default-protected-privateC:private-protected-default-public D: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 j ava.applet.Applet D:java.awt.Frame30:关于String 和StringBuffer 下面说法正确的是( a )A:String操作字符串不改变原有字符串的内容B:StringBuffer连接字符串速度没有String 快C:String 可以使用append方法连接字符串D:StringBuffer 在java.util包中二:简答题(2*20=40)(题目写在答题纸上面)1:String是最基本的数据类型吗,Java基本类型有哪些?String不是最基本的数据类型,而是一个对象。
Java基本类型有:布尔型:boolean字符型:char整数型:byte、short、int、long浮点数型:float、double2:面向对象的特点?1. 信息隐藏和封装特性:2.继承:3.组合特性4.动态特性:抽象,多态3:JDK是什么?jdk是Java语言的软件开发工具包4:作用域public,private,protected,以及不写时的区别?作用域当前类同一package子孙类其他packagepublic√√√√protected√√√×friendly√√××private√×××不写时默认为friendly5:Java是编译型语言还是解释型的语言?它既不属于传统的编译型语言也不属于解释型语言.它是先编译成.CLASS字节码文件,然后再利用虚拟机解释执行的.可以说先编译后解释.6:final、finally、finalize的区别final用于声明属性,方法和类,分别表示属性不可交变,方法不可覆盖,类不可继承。
finally是异常处理语句结构的一部分,表示总是执行。
finalize是Object类的一个方法7:heap和stack的区别stack是一种现行结构,其添加和删除元素应在同一段完成,栈按照先进后出的方式进行处理。
heap是栈的一个组成元素。
8:xml有哪些解析技术?区别是什么?有DOM,SAX,STAX等DOM:处理大型文件时其性能下降的非常厉害。
这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML 的随机访问SAX:不现于DOM,SAX是事件驱动型的XML解析方式。
它顺序读取XML文件,不需要一次全部装载整个文件。
当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML 的顺序访问STAX:Streaming API for XML (StAX)9:GC是什么?为什么要有GC?GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。
10::数组有没有length()这个方法?String有没有length()这个方法?数组没有length()这个方法,有length的属性。
String有有length()这个方法。
11:Overload和Override的区别。
Overloaded的方法是否可以改变返回值的类型?方法的重写Overriding和重载Overloading是Java多态性的不同表现。