Java经典练习题
JAVA程序设计练习题(有答案)

《JAVA程序设计》练习题一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B)。
A.javaB. .classC.html D。
exe2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A ).A。
3 B. 3。
5C. 4 D。
53、不允许作为类及类成员的访问控制符的是(C)。
A. public B。
privateC。
static D。
protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB 作为前缀就可以调用它,该方法头的形式为(A )。
A. static void method( )B. public void method()C。
final void method( ) D。
abstract void method( )二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用 2字节内存空间,这样,无论是中文字符还是英文字符,都是占用 2 字节内存空间。
3、设 x = 2 ,则表达式 ( x + + )/3 的值是 0。
4、若x = 5,y = 10,则x 〈 y和x 〉= y的逻辑值分别为true 和 false 。
5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
最终(final)方法是不能被当前类的子类重新定义的方法。
6、创建一个名为MyPackage的包的语句是package MyPackage ;,该语句应该放在程序的位置为:应该在程序第一句。
7、设有数组定义:intMyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70};则执行以下几个语句后的输出结果是120 。
java试题库及答案

java试题库及答案Java试题库及答案一、单选题1. Java语言的特点是什么?A. 面向过程B. 面向对象C. 编译型语言D. 解释型语言答案:B2. 在Java中,用哪个关键字可以定义一个类?A. publicB. classC. voidD. int答案:B3. 下列哪个是Java的合法标识符?A. 2classB. class#2C. _class2D. class:2答案:C4. Java中的main()方法必须定义为什么类型的参数?A. intB. StringC. voidD. None答案:D5. 在Java中,哪个关键字用于实现异常处理?A. tryB. catchC. throwD. All of the above答案:D二、多选题6. 下列哪些是Java的基本数据类型?A. intB. StringC. floatD. boolean答案:A, C, D7. 在Java中,哪些是合法的数组初始化方式?A. int[] arr = new int[10];B. int arr[] = {1, 2, 3};C. int arr = {1, 2, 3};D. int arr = new int[3]{1, 2, 3};答案:A, B8. 下列哪些是Java的控制流语句?A. if-elseB. switch-caseC. forD. try-catch答案:A, B, C三、简答题9. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是一种自动内存管理功能,它周期性地执行,回收不再使用的对象所占用的内存空间。
垃圾回收器会跟踪每个对象的引用,当对象的引用计数为0时,即没有任何引用指向该对象,垃圾回收器就会在下一次执行时回收该对象占用的内存。
10. 什么是Java的接口?它有什么作用?答案:Java中的接口是一种完全抽象的类,它不包含任何实现代码,只包含常量和抽象方法的声明。
JAVA习题题目及答案

第1章问答题及作业题第1章问答题1、发明Java语言的原因是什么?发明Java语言的主要贡献者是谁?2、“Java编译器将源文件编译生成的字节码是机器码”,这句话正确吗?3、Java程序的主类必须含有怎样的方法?4、“Java应用程序必须含有一个类是public类”,这句话正确吗?5、“Java Applet程序的主类必须是public类”,这句话正确吗?6、请叙述Java源文件的命名规则。
7、源文件生成的字节码在运行时都加载到内存中吗?8、怎样编写加载运行Java Applet的简单网页?9、编译器使用“-source”参数的作用是什么?“-source”参数的默认取值是什么?第1章作业题1.参照例1-1编写一个Java应用程序,程序能在命令行中输出“早上好,Good Morning”。
2.参照例1-2编写一个Java Applet程序,程序能在浏览器中显示“你好,Hello”。
第2章问答题及作业题第2章问答题1、什么是标识符?标识符的规则是什么?2、什么是关键字?请说出5个关键字。
3、Java的基本数据类型是什么?4、下列哪些语句是错误的?int x=120;byte b=120;b=x;5、下列哪些语句是错误的?float x=12.0;float y=12;double d=12;y=d;6、下列两条语句的作用是等价的吗?char x=97;char x=’a’;7、下列语句输出的结果是什么?int a=97;byte b1=(byte)128;byte b2=(byte)-129;System.out.printf(“%c,%d,%d”,a,b1,b2);8、数组是基本数据类型吗?怎样获取一维数组的长度?9、假设有两个int类型数组:int[] a=new int[10];int[] b=new int[8];b=a;a[0]=100;b[0]的值一定是100吗?10、下列两条语句的作用等价吗?int[] a={1,2,3,4,5,6,7,8};int[] a=new int[8];}第2章作业题1.参照例2-1编写一个Java应用程序,输出俄文字母表。
java试题练习

《 Java 程序设计 》课程试题 课程号: √ 考试 □ A 卷 √ 闭卷 □ 考查 □ B 卷 □ 开卷一、单项选择题(20题;每题2分,共40分) 1、以下对于标识符的描述有误的是___。
A ) 常量用大写字母,变量用小写字母 B ) JAVA 的标识符严格区分大小写 C ) 第一个字符不是数字 D ) 标识符中任何位置都不能用数字 答案:D (难度系数C )知识点:变量 2、在HTML 中,用________标签来强制显示Applet 。
A ) name,height,width B )codebase, height,width C ) code ,name D ) code, height,width 答案:D (难度系数B )知识点:小应用程序 3、在Applet 程序的自定义的Applet 子类中,在Applet 的界面中显示文字、图形和其他界面元素,常常重载的方法是 。
A )start( )B )stop( )C )paint( )D )init( )4、创建一个标识有“关闭”按钮的语句是___。
A ) TextField b = new TextField(“关闭”);B ) Label b = new Label(“关闭”);C ) Checkbox b = new Checkbox(“关闭”);D ) Button b = new Button(“关闭”);答案:D (难度系数C )知识点:GUI 编程班级:姓名: 学号:试题共页加白纸张密封线5、在编写异常处理的Java程序中,每个catch语句块都应该与___语句块对应,使得用该语句块来启动Java的异常处理机制。
A)if – else B)switch C)try D)throw答案:C(难度系数B)知识点:异常6、以下关于循环语句描述正确的是___。
A)for循环不可能产生死循环B)while循环不可能产生死循环C)for循环不能嵌套while循环D)即使条件不满足do……while循环体内的语句也至少执行一次答案:D(难度系数B)知识点:循环7、以下对选择语句的描述错误的是___。
java基础50道经典练习题及答案

java基础50道经典练习题及答案Java基础50道经典练习题及答案Java作为一门广泛应用于软件开发领域的编程语言,其基础知识的掌握对于程序员来说至关重要。
为了帮助大家更好地理解和掌握Java的基础知识,下面将介绍50道经典的Java练习题及其答案。
1. 编写一个Java程序,打印输出"Hello, World!"。
```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```2. 编写一个Java程序,计算并打印输出1到100之间所有偶数的和。
```javapublic class SumOfEvenNumbers {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}System.out.println("Sum of even numbers: " + sum);}}```3. 编写一个Java程序,判断一个整数是否为素数。
```javapublic class PrimeNumber {public static void main(String[] args) {int number = 17;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(number); i++) {if (number % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(number + " is a prime number.");} else {System.out.println(number + " is not a prime number."); }}```4. 编写一个Java程序,将一个字符串反转并输出。
java_试题练习题-教师用

一、单项选择题(20题;每题2分,共40分)1、如果x=4,y=2,则z=x&y值是。
A)z=0 B)z=1 C)z=2 D)z=4答案A 难度系数 B 知识点:逻辑表达式运算2、接口中定义的数据成员是。
A)整型数据B)字符型数据C)常量型数据D)任何数据答案C 难度系数 B 知识点:接口,数据成员3、Java语言具有许多优点和特点,_______反映了Java程序并行机制的特点。
A) 安全性B) 多线性C) 跨平台D) 可移植答案:B;难度系数:C;知识点:java特性。
4、_______的类声明是正确的。
A)abstract final class HI{•••}B)abstract private move(){•••}C)protected private number;D)public abstract class Car{•••}答案:D;难度系数:B;知识点:语法基础。
5、Character流与Byte流的区别是_______。
A) 每次读入的字节数不同B) 前者带有缓冲,后者没有C) 前者是块读写,后者是字节读写D) 二者没有区别,可以互换使用答案:C;难度系数:B;知识点:文件IO。
6、在Applet中显示文字、图形等信息时,应使用的方法是__ _____。
A) paint() B) init() C) start() D) destroy()答案:A(难度系数B ,知识点:APPLET)7、下列语句正确的是________。
A)int a={1,2,3} B)int b=(1,2,3);C)int c[]={1,2,3} D)int []d={1 2 3}答案:C(难度系数C)知识点:数组8、下列语句关于内存回收的说明是正确的是___。
A)程序员必须创建一个线程来释放内存;B)内存回收程序负责释放无用内存C)内存回收程序允许程序员直接释放内存D)内存回收程序可以在指定的时间释放内存对象答案:B 难度系数: C 知识点:内存释放9、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为___。
java集合练习题(打印版)

java集合练习题(打印版)# Java集合练习题## 一、选择题1. 下列哪个不是Java集合框架中的一部分?A. ArrayListB. LinkedListC. HashMapD. MyCollection2. 在Java中,哪个接口提供了对集合元素的迭代访问?A. CollectionB. IteratorC. ListD. Set3. Java集合框架中的哪个类是线程安全的?A. ArrayListB. LinkedListC. HashMapD. Vector4. 以下哪个方法用于判断一个集合是否包含特定的元素?A. add()B. contains()C. remove()D. size()5. 以下哪个方法用于获取集合中的元素个数?A. add()B. contains()C. remove()D. size()## 二、简答题1. 解释ArrayList和LinkedList的主要区别。
2. 描述HashMap的工作原理。
3. 为什么在Java中使用迭代器遍历集合是安全的?## 三、编程题1. 题目:创建一个ArrayList,添加5个整数元素,并打印出这些元素。
```javaArrayList<Integer> list = new ArrayList<>();// TODO: 添加元素并打印```2. 题目:使用LinkedList实现一个简单的队列,添加3个元素,并按顺序打印出来。
```javaLinkedList<Integer> queue = new LinkedList<>();// TODO: 添加元素并打印```3. 题目:创建一个HashMap,存储学生的名字和分数,然后遍历HashMap并打印每个学生的名字和分数。
```javaHashMap<String, Integer> studentScores = new HashMap<>();// TODO: 添加学生分数并打印```4. 题目:实现一个程序,使用HashSet存储一组整数,然后检查并打印一个给定整数是否在HashSet中。
java练习题答案

java练习题答案第1章java语言概述习题一、填空题1、面向对象程序的主要特征:继承,__封装___,___多态_____。
2、java中的继承机制之所以能够降低程序的复杂性,提高程序的效率,主要是因为它使代码可以__重用或复用___.3、java语言中,为将源代码翻译成__字节码__文件时产生的错误称为编译错误,而将程序在运行中产生的错误称为运行错误。
4、javac是java语言中的编译器,基本语法是:javac[选项]__文件名__,java是java语言中的解释执行器,基本语法是:java[选项]___类名___.5、java语言的主要贡献者是谁Jamegoling二、单选题1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A、javaB、.claC、htmlD、.e某e2、main方法是JavaApplication程序执行的入口点,关于main方法的方法首部,以下(B)项是合法的。
A、publictaticvoidmain()B、publictaticvoidmain(Stringarg[])C、publictaticintmain(String[]arg)D、publicvoidmain(Stringarg[])三、判断1、Java语言具有较好的安全性和可移植性及与平台无关等特性。
√2、Java语言的源程序不是编译型的,而是编译解释型的。
√四、问答题1、编写、运行java程序需要经过哪些主要步骤?答:1.编写源文件,扩展名必须是.java2.编写java源程序,使用java编译器编写源文件,得到字节码文件3.运行java程序,使用javaSE平台只不过的java解释器来解释执行字节码文件。
2、阅读下列java源代码文件,并回答问题publicclaSpeak{voidpeakHello(){Sytem.out.println(\);}}cla某iti8{publictaticvoidmain(Stringarg[]){Speakp=newSpeak();p.peakHello();}}(1)上述源文件的名字是什么?Speak.java(2)上述源文件编译后生成几个字节码文件,这些字节码文件的名字分别是什么?Speak.cla某iti8.cla第2章(1)基本数据类型练习题一、填空题1、java基本数据类型中整型,字符型分别占用字节数为___4___,___2____.2、java语言中的浮点数根据数据存储长度和数值精度的不同,进一步分为_float__和__double__两种具体类型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java基础试题一、选择题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、main方法是Java Application程序执行的入口点,关于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[] )44.Which of the following is not a valid comment:Da. /** comment */b. /* comment */c. /* commentd. // comment5. Java中char类型的数据长度为 :C(A)8位(B)16位(C)32位(D)64位6.下面哪个表达式是错误的:B(A)int i = 100;(B)float f = 100.0;(C)Object o = “Hello world”;(D)char c = ‘\u1234’;7.下面哪个语句是正确的:C(A)byte s = 256;(B)String s = ‘Hello world’;(C)int x = 012;(D)char c = “a”;8.下列叙述中,正确的是:AA)声明变量时必须指定一个类型B)Java认为变量number与Number相同C)Java中唯一的注释方式是"//"D)源文件中public类可以有0或多个9.下列属于合法的Java标识符是:DA)"ABC" B)&5678 C)+rriwo D)saler10.下面哪个标识符是不合法的:D(A)s1 (B)$1 (C)_1 (D)1s11.在switch(expression)语句中,expression的数据类型不能是:AA)double B)char C)byte D)short12.已知:int[] a = new int[100];在下列给出的数组元素中,非法的是:DA)a[0] B)a[1] C)a[99] D)a[100]13.下列的哪个赋值语句是不正确的?: AA.float f = 11.1; B.double d = 5.3E12;C.float d = 3.14f ; D.double f=11.1E10f;14.下列的哪个赋值语句是正确的?DA.char a=12; B.int a=12.0;C.int a=12.0f; D.int a=(int)12.0;15.下面关于数组的定义错误的是(B)A) int a[]={1,2,3,4,5,6}; B) int a[6]={1,2,3,4,5,6}C) int[][] a; D)int [] a=new int[6];(以下为多项选择)16.下面哪些代码可以正确编译( AC)(A)double d = 1.0;int i = 1;if(d == i) {System.out.println(“Hello world”);}(B)int i = 1;int j = 2;if(i = 1 && j = 2) {System.out.println(“Hello world”);}(C)boolean b1 = true, b2 = false;if(b1 == b2) {System.out.println(“Hello world”);(D)int i = 0;if(i) {System.out.println(“Hello world”);}17.下面的哪些声明是合法的?AC(A)int a[]; (B)int a[5]; (C)int[] a; (D)int a[] = [5];18.下面哪些类型是Java的基本数据类型ABD(A)int (B)boolean (C)String(D)double二、填空题1..JVM是(Java虚拟机),JDK是(Java开发工具包),appletviewer是(小应用程序阅览器) 。
2. Java源程序经编译生成的字节码文件的扩展名为(class)3. Java语言的主要贡献者是(James Gosling(詹姆斯·戈士林))。
4.在JDK中,Java语言的编译命令是_____Javac.exe_______,Java语言的执行命令是java .exe_______。
5.写出以下表达式的结果:1) 5 % 6 / 3 =(1)2) true && false =(false)3) 5 >> 3 =(0)4) 12 ^ -4 =(-16 )6.设有数组定义:int a[]= { 11 , 22 , 33 , 44 , 55 , 66 , 77 , 88 , 99 }; 则执行下列几个语句后的输出结果是33 66 99。
for ( int i = 0 ; i < a.length ; i ++ )if(a[i]%3==0 )System.out.print(a[i]+" ");三、简答题1.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?switch(expr1)中,expr1是一个整数表达式。
因此传递给switch 和case 语句的参数应该是int、short、char 或者byte。
long,String 都不能用于swtich中的表达式(JDK 7以后可以作用于String)。
2.一个".java"源文件中是否可以包括多个类?有什么限制?可以。
必须只有一个类名与文件名相同3.简述Java语言实现平台无关(跨平台)性的原理。
J Java程序经过编译,会生成字节码文件,而字节码可以在任何安装了Java虚拟机的平台上运行,Java虚拟机类似一个模拟执行环境,在不同的操作系统上拥有不同的Java虚拟机实现,但是这些Java虚拟机遵循统一的规范来解释class文件,并将class文件中的指令转换为本地操作系统对应的指令,这样就实现了相同的class文件可以通过Java虚拟机转换为对应操作系统上的对应指令,实现class文件,即Java程序的跨平台性。
4.说明Java语言中三种注释的语法格式,以及用途。
Java语言中注释的语法有三种:单行注释、多行注释和文档注释。
1)单行注释,单行注释指只能书写一行的注释。
用于对于代码进行简单的说明,单行注释的语法格式为://注释内容2)多行注释:多行注释指可以书写任意多行的注释。
多行注释一般用于说明比较复杂的内容,例如程序逻辑或算法实现原理等。
多行注释的语法格式为:/* 注释内容*/3)文档注释:文档注释指可以被提取出来形成程序文档的注释格式,这是Java语言有特色的注释格式。
一般对于程序程序的结构进行说明,例如类、属性、方法和构造方法进行说明,文档注释的语法格式为:/** 注释内容*/5.请把以下英文翻译成中文:When you compile a program written in the Java programming language, the compiler converts the human-readable source file intoplatform-independent code that a Java Virtual Machine can understand. This platform-independent code is called Bytecode.当你在编译Java编程语言编写的程序,编译器转换成平台无关的代码,Java虚拟机能够理解人类可读的源文件。
这个平台无关的代码被称为字节码。
}第二章注意问题:main函数是Java应用程序执行的入口。
(int)23.7结果为23(int)-45.89f结果为-45+”除字符串相加功能外,还能把非字符串转换成字符串,如:“x”+123;的结果是“x123”。
如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。
但被模数是负数就另当别论了1,三元运算符class TernaryOp{public static void main(String args[]){int salary,daysPresent = 30;salary = daysPresent == 20 ? 2000 : 3000;System.out.println("您本月薪资为 $"+salary);}}2,编写一个程序,这个程序从键盘上输入2个数,然后求这2个数的和,程序结束。
提示:调用System.in.read();可以读取到一个从键盘上输入字符对应的整数。
通过这个程序,你一定能体会到在什么import java.io.*;public class Ch1 {public static void main(String[] args) throws IOException{ BufferedReader ke=new BufferedReader(new InputStreamReader(System.in));String x;int p,q,m;System.out.print("请输入第一个数");x=ke.readLine();p=Integer.parseInt(x);System.out.print("请输入第二个数");x=ke.readLine();q=Integer.parseInt(x);m=p+q;System.out.println("两个数的和为:"+m);}}3,数组public class Lo {public static void main(String[] args) {int[] aa={32,55,69};for(int i=0;i<aa.length;i++){System.out.print(aa[i]+”“);}System.out.println( );}}4,输入一个年份,判断它是不是闰年。