Java程序的设计习题集(含答案)

合集下载

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

JAVA程序设计练习题(有答案)
int s = 0 ;
for (int i = 0 ; i < MyIntArray.length ;i + + )
if ( i % 2 = = 1 )
s += MyIntArray[i] ;
System.out.println(s);
8、的定义可以实现多重继承关系。
ReturnType method(byte x, double y)
{
return (short) x/y*2;
}
A、byte B、short C、int D、double
三.程序阅读题
1.以下程序的输出结果为相等。
class StringTest1
{
public static void main(String[] args)
用2字节内存空间。
3、设x = 2,则表达式( x + + )/3的值是0。
4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。
5、抽象(abstract)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。
{ super(aa, bb, cc);
A = aa+bb+cc;
}
void show()
{
System.out.println("a="+a+"\nb="+b+"\nc="+c);
}
}
一.判断题
1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)

Java程序设计习题附答案(一)

Java程序设计习题附答案(一)

Java程序设计习题附答案(一)java程序设计题库第一部分是引言1、下列关于java语言的特点,描述错误的是(c)a、 Java是一种跨平台编程语言。

java支持分布式计算。

java是一种面向过程的编程语言。

java支持多线程2、java语言具有许多优点和特点,下列选项中,哪个反映了java程序并行机制的特点?(b)a、安全性b、多线性c、跨平台d、可移植3、javajdk中调试器的命令是(c)。

a、javacb、javac、jdbd、avah4.在jar文件中运行类文件需要在Java命令之后添加的参数是(a)。

a、-cpb-gc-dd-verbose5、下面哪项在java中是不合法的标识符?(c)a、$userb、pointc、you&med、 _uuline6、下面关于java语言说法正确的是(abcd)。

a、 Java语言是一种面向对象、解释和执行的网络编程语言。

b、 Java语言是可移植的、独立于平台的编程语言。

c、 Java语言可以自动收集内存垃圾。

d、java语言编写的程序虽然是“一次编译,到处运行”,但必须要有java的运行环境。

7、在java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。

(b)a、源代码,htmlb,源代码,字节码C,字节码,源代码D,HTML,字节码8,Java JVM指的是(b)。

a、由java操作的家用设备(通常是一个漂亮的小烤箱)b、java字节代码的解释程序c、java源代码的编译器d、运行Java所需的硬件设备9、在java中,关于classpath环境变量的说法不正确的是(a)。

a、一旦设置了类路径,就不能对其进行修改,但可以将目录添加到环境变量中。

b、编译器使用它来搜索各自的类文件。

c、类路径是一个目录列表。

d、解释器使用它来搜索相应的类文件。

10.一个可以独立运行的Java应用程序(d)。

a、可以有一个或多个main方法。

Java程序设计各章习题及其答案

Java程序设计各章习题及其答案

Java程序设计各章习题及其答案第一章习题及思考题1、Java程序是由什么组成的?一个程序中必须有public类吗?Java源文件的命名规则是怎样的?答:一个Java源程序是由若干个类组成。

一个Java程序不一定需要有public类:如果源文件中有多个类时,则只能有一个类是public 类;如果源文件中只有一个类,则不将该类写成public也将默认它为主类。

源文件命名时要求源文件主名应与主类(即用public修饰的类)的类名相同,扩展名为.java。

如果没有定义public类,则可以任何一个类名为主文件名,当然这是不主张的,因为它将无法进行被继承使用。

另外,对Applet小应用程序来说,其主类必须为public,否则虽然在一些编译编译平台下可以通过(在BlueJ下无法通过)但运行时无法显示结果。

2、怎样区分应用程序和小应用程序?应用程序的主类和小应用程序的主类必须用public修饰吗?答:Java Application是完整的程序,需要独立的解释器来解释运行;而Java Applet则是嵌在HTML编写的Web页面中的非独立运行程序,由Web浏览器内部包含的Java解释器来解释运行。

在源程序代码中两者的主要区别是:任何一个Java Application 应用程序必须有且只有一个main方法,它是整个程序的入口方法;任何一个Applet小应用程序要求程序中有且必须有一个类是系统类Applet的子类,即该类头部分以extends Applet结尾。

应用程序的主类当源文件中只有一个类时不必用public修饰,但当有多于一个类时则主类必须用public修饰。

小应用程序的主类在任何时候都需要用public来修饰。

3、开发与运行Java程序需要经过哪些主要步骤和过程?答:主要有三个步骤(1)、用文字编辑器notepad(或在Jcreator,Gel, BuleJ,Eclipse, Jbuilder等)编写源文件;(2)、使用Java编译器(如Javac.exe)将.java源文件编译成字节码文件.class;(3)、运行Java程序:对应用程序应通过Java解释器(如java.exe)来运行,而对小应用程序应通过支持Java标准的浏览器(如Microsoft Explorer)来解释运行。

java程序设计试题及答案

java程序设计试题及答案

java程序设计试题及答案一、选择题1. 在Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. enumD. struct答案:A2. Java中的“==”操作符用于比较什么?A. 引用是否相同B. 引用所指向的对象的值是否相同C. 基本数据类型的值是否相同D. 引用所指向的对象的内存地址是否相同答案:C3. 下列哪个是Java的合法标识符?A. 2variableB. variable-nameC. #variableD. variable$name答案:B4. Java中,哪个关键字用于实现多态?A. abstractB. finalC. overrideD. implements答案:C5. 在Java中,以下哪个是正确的数组初始化方式?A. int[] array = new int[5] = {1, 2, 3};B. int array[] = {1, 2, 3, 4, 5};C. int array = new int[5] = {1, 2, 3, 4, 5};D. int[] array = {1, 2, 3, 4, 5};答案:D二、填空题根据题目要求,填空题需要根据题目所给的上下文,填写正确的信息。

1. Java是一种______语言。

答案:面向对象2. 在Java中,所有的类都是从______类直接或间接继承的。

答案:Object3. Java中的集合框架中,List接口的实现类ArrayList是______的。

答案:有序4. Java中的异常处理机制是通过______关键字实现的。

答案:try-catch5. Java中的包是用来组织类和接口的,使用______关键字来声明一个包。

答案:package三、简答题1. 简述Java中接口和抽象类的区别。

答案:接口(interface)是一种完全抽象的类型,它可以包含抽象方法和默认方法,但不能有具体实现。

JAVA编程题全集(100题及答案)

JAVA编程题全集(100题及答案)

Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。

(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。

// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。

");elseSystem.out.println(year+" 年不是闰年。

");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。

(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。

(完整版)Java程序设计习题附答案(三)

(完整版)Java程序设计习题附答案(三)

第三部分面向对象程序设计1、引用数据种类变量拥有基本属性为( A 、变量名 B、数据种类ABCD )C、储存单元D、变量值。

2、面向对象技术的特征是(ACD )A 、继承性B 、有效性C、多态性3、以下哪个命题为真?(C)D 、封装性。

A、全部类都一定定义一个结构函数。

B、结构函数一定有返回值。

C、结构函数能够接见类的非静态成员。

D、结构函数一定初始化类的全部数据成员。

4、对于子类与父类关系的描绘正确的选项是(ACD )A、子种类的数据能够隐式变换为其父种类的数据;B、父种类的数据能够隐式变换为其子种类的数据;C、父种类的数据一定经过显示种类变换为其子种类的数据;D、子种类实例也是父种类的实例对象。

5、以下哪一项说法最好地描绘了Java 中的对象?( C)A 、对象是经过import 命令引入到程序中的全部事情B、对象是方法的会合,这些方法在小程序窗口或应用程序窗口中产生图形元素,或许计算和返回值C、对象是一种数据结构,它拥有操作数据的方法D、对象是一组拥有共同的结构和行为的类6、下边哪个重点字不是用来控制对类成员的接见的?(C)A 、 public B、 protected C、 default D、 private7、 Java 语言正确的常量修饰符应当是(D)A 、 final B、 static final C、 static D、 public static final ;8、接口的全部成员域都拥有public、static和final属性。

9、接口的全部成员方法都拥有public和abstract属性。

10、编译以下源程序会获得哪些文件?(C)class A1{}class A2{}public class B{public static void main(String args[]){}}A) 只有B)只有 A1.class 和 A2.class 文件C)有、 A2.class 和 B.class 文件D)编译不行功11、以下哪一种说法是正确的?( A )A、私有方法不可以被子类覆盖。

java程序设计练习题

java程序设计练习题

《java程序设计》1.填空题(1)Java程序编译成(class )文件(2)Java程序在(JVM )上执行(3)Java程序的执行方式是(半编译和半解释型)执行的(4)在Java程序中,创建对象的操作是(new )(5)在Java语言中,指明一个类从父类派生的关键字是(extends )(6)线程是进程中的一个执行(单元)(7)在Java语言中,指代父类的关键字是(super )(8)表明一个变量是数组的符号是([] )(9)在Java程序中,用关键字(import )引入其它文件中的类(10)在Java程序中定义包的关键字为(package )2.简答题(1)简述Java语言的特点。

答:Java语言的特点有以下几点:1.简单性。

2.面向对象。

3.平台无关性。

4.可移植性。

5.解释性。

6.离性能。

7.动态性。

8.可靠性和安全性。

9.多线程。

10.分布式处理。

(2)简述面向对象程序设计的三大基本特点。

(3)答:封装性:封装性是指将对象相关的信息和行为状态捆绑成一个单元,即将对象封装为一个具体的类。

封装隐藏了对象的具体实现,当要操纵对象时,只需调用其中的方法,而不用管方法的具体实现。

继承性:一个类继承另一个类,继承者可以获得被继承类的所有方法和属性,并且可以根据实际的需要添加新的方法或者对被继承类中的方法进行覆写,被继承者称为父类或者超类,继承者称为子类或导出类,继承提高了程序代码的可重用性,Java中一个子类只能继承一个父类,Object类是所有类的最终父类。

多态性:多态性是指不同的对象对同一事物而做出的相同行为,一个类A可以指向其自身类和其导出类,一个接口可以指向其接口实现类,在方法参数中,使用多态可以提高参数的灵活性。

(4)解释Java程序跨平台的原理。

答:ava源码--->JVM虚拟机编译---->.class文件--->各个平台的Java虚拟机加载执行.class文件Java程序实际是在Java虚拟机(JRE是软件实现)中运行,Java虚拟机类似一个模拟执行环境,在不同的操作系统上拥有不同的Java虚拟机实现,但是这些Java虚拟机遵循统一的规范来解释class文件,并将class文件中的指令转换为本地操作系统对应的指令,这样就实现了相同的class文件,可以通过Java虚拟机转换为对应操作系统上的对应指令,实现class 文件,也就是Java程序的跨平台性。

Java程序设计考试试卷(附答案)

Java程序设计考试试卷(附答案)

Java程序设计考试试卷(附答案)一、单项选择题:共20题,每小题1分,满分20分1、下列选项中,不属于Java语言特点的一项是。

( D )A、安全性B、分布式C、面向对象D、编译执行2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C )A、面向对象B、有类库C、跨平台D、动态链接3、如下哪个不是Java中有效的变量名。

( A )A、 ifB、helloC、nameD、good4、下列不属于Java保留字的一个是( B )。

A、elseB、UnicodeC、ifD、static5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应该是( C )。

A、’a’B、12C、’c’D、语句在编译时出错6、下列关于int类型和long类型的说法中,正确的一个是( A )。

A、int类型可以自动转换为long类型B、long类型可以自动转换为int类型C、long类型占的存储空间比int类型的小D、long类型和int类型数据能表示整数的范围一样7、下列类的定义中,错误的是( B )。

A、class y{ .... }B、public x extends y{ .... }C、public class x extends y{ .... }D、class x extends y implements y1{ .... }8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。

A、1与1B、2与1C、1与2D、2与29、为了区分重载多态中同名的不同方法,要求( C )。

A、调用时用类名或对象名做前缀B、返回值类型不同C、形式参数个数或者类型不同D、形式参数名称不同10、定义类头时能使用的修饰符是( C )。

A、privateB、staticC、protectedD、abstract11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )A、没有import相应的包B、if语法错误C、程序中存在异常D、文件名写错12、int类型被包装在如下的哪一个类中?( B )A、java.1ang.CharacterB、java.1ang.IntegerC、java.util.IntegerD、java.1ang.Short13、关于对下列代码段的描述,正确的一项是( C )。

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

目录一、判断题 (2)二、选择题 (4)三、填空题 (17)四、写出下列程序完成的功能 (25)五、写出下面程序的运行结果 (29)六、使用Java语言编写程序 (33)七、简答题 (34)Java程序设计习题集一、判断题1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。

( F )2.有的类定义时可以不定义构造函数,所以构造函数不是必需的。

( F ) 3.类及其属性、方法可以同时有一个以上的修饰符来修饰。

( T ) 4.Java的屏幕坐标是以像素为单位,容器的左下角被定为坐标的起点。

( F )(应该是左上角)5.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。

( F) 6.Final类中的属性和方法都必须被final修饰符修饰。

( F )(静态的必须被静态的修饰符修饰)7.最终类不能派生子类,最终方法不能被覆盖。

(T )8.子类要调用父类的方法,必须使用super关键字。

( T )9.一个Java类可以有多个父类。

( F )10.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p 是正确的。

( F )11.一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。

( T )12.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。

( T )13.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。

( T )14.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。

( F )15.一个容器中可以混合使用多种布局策略。

( T )16.一个线程对象的具体操作是由run()方法的容确定的,但是Thread类的run()方法是空的,其中没有容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。

( T )17.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

( T )18.Java Applet是由独立的解释器程序来运行的。

( F )19.Java Applet只能在图形界面下工作。

( T )20.Java的字符类型采用的是ASCII编码。

( F )21.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。

( T) 22.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。

( F)23、Java是不区分大小写的语言。

( F)24、Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

( T )25、Java Application是由独立的解释器程序来运行的。

( F )26、Java Applet的字节码文件必须嵌入HTML的文件中并由负责解释HTML 文件的WWW浏览器充当解释器来解释运行。

( F )27、Java Application只能在字符界面下工作。

( F )28、Java的字符类型采用的是Unicode编码,每个Unicode码占16个比特。

( T )29、Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是主类。

(T )30、子类的域和方法的数目一定大于等于父类的域和方法的数目。

( F )31、类在实现接口的方法时,必须显示地使用public修饰符。

( T )32、一个类只能有一个父类,但一个接口可以有一个以上的父接口。

(T )33、程序中抛出异常时(throw …),只能抛出自己定义的异常对象。

( F )34、System类中的in是一个输入对象。

( T )35、实现一个接口,则在类中一定要实现接口中的所有方法。

( T)36、所有的文件输入/输出流都继承于InputStream类/OutputStream类。

( F )37、一个异常处理中 finally语句块只能有一个或者可以没有。

(F )38、语句import java.applet.Applet;最后的Applet是代表类(class)。

( T )39、类体中private修饰的变量在本类中能访问,类生成的对象也能访问。

( F )40、线程使用sleep()方法休眠后,可以用notify()方法唤醒。

( F )41、一个异常处理中 finally语句块只能有一个或者可以没有。

( T )42、用Javac编译Java源文件后得到代码叫字节码。

(T )43、数组、类和接口都是引用数据类型。

( F )44、一个Applet编译后的类名是Test.class,运行此小程序的命令是Java Test。

( F )45、Java语言中一个Char类型的数据占用2个字节大小的存空间。

( T )46、编译语句Double aDouble=37.2D不会出现编译错误。

(F )47、编译语句int aInt=66666不会出现编译错误。

(T )48、判断下面说法的正误:if(true){int i=17;}System.out.println(i);运行此程序的结果是输出17。

(F)49、float x=26f; int y=26; int z=x/y; 以上语句能正常编译和运行。

( F)50、判断下面说法的正误:int x=9; if(x>8 and x<10) System.out.println("true"); 以上语句运行的结果是显示true。

(T )51、判断下面说法的正误:String str; System.out.println(str.length()); 以上语句运行的结果是显示0 。

(F )52、抽象类不能实例化。

(T )53、一个方法最多能有一个return语句。

( F)54、接口名可以作为方法返回值的类型。

( T)55、类A和类B位于同一个包中,则除了私有成员,类A可以访问类B的所有其他成员。

( T)二、选择题1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( B )。

A、javaB、classC、htmlD、exe2.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( BC )?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[] )3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。

A、static void method( )B、public void method( )C、final void method( )D、abstract void method( ) 4.下列哪个是合法的Java标识符?( BC )A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.55.Java Application源程序的主类是指包含有( A )方法的类。

A、main方法B、toString方法C、init方法D、actionPerfromed方法6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( B )个比特位。

A、8B、16C、32D、647.设 a = 8,则表达式 a >>> 2 的值是( B )。

A、1B、2C、3D、48.若a的值为3时,下列程序段被执行后,c的值是多少?( C )c = 1;if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c= 4;A、1B、2C、3D、49.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( C )语句。

A、import java.awt.* ;B、import java.applet.Applet ;C、import java.io.* ;D、import java.awt.Graphics ; 10.对于构造函数,下列叙述正确的是( ACD )。

A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。

B、构造函数的返回类型只能是void型。

C、构造函数的主要作用是完成对类的对象的初始化工作。

D、一般在创建新对象时,系统会自动调用构造函数。

11.下面的是关于类及其修饰符的一些描述,正确的是:( AD )。

A、abstract类只能用来派生子类,不能用来创建abstract类的对象。

B、final类不但可以用来派生子类,也可以用来创建final类的对象。

C、abstract不能与final同时修饰一个类。

D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。

12.若需要定义一个类域或类方法,应使用哪种修饰符?( A )A、staticB、packageC、privateD、public 13.若在某一个类定义中定义有如下的方法:abstract void performDial( );该方法属于( D )。

A、本地方法B、最终方法C、解态方法D、抽象方法14.下列关于静态初始化器的叙述中,哪一个是正确的?( B )A、静态初始化器是在构造函数之前加上static修饰符。

B、静态初始化器是对类自身进行初始化。

C、静态初始化器在同一个类中只能有一个。

D、静态初始化器是在其所属的类加载存时不是由系统自动调用执行。

15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?( AB )A、实例方法可以直接调用父类的实例方法。

B、实例方法可以直接调用父类的类方法。

C、实例方法可以直接调用其他类的实例方法。

D、实例方法不可以直接调用本类的类方法。

16.设有下面两个类的定义:class Person {}class Student extends Person {long id; // 号int score; // 入学总分String name; //int getScore(){return score;}}问:类Person和类Student的关系是( B )。

A、包含关系B、继承关系C、关联关系D、无关系,上述类定义有语法错误17.设有下面的两个类定义:class AA {void Show(){ System.out.println(“我喜欢Java!”);}class BB extends AA {void Show(){ System.out.println(“我喜欢C++!”);}则顺序执行如下语句后输出结果为:( A )AA a; BB b;a.Show();b.Show();A、我喜欢Java!B、我喜欢C++!我喜欢C++! 我喜欢Java!C、我喜欢Java!D、我喜欢C++!我喜欢Java! 我喜欢C++!18.设有下面的一个类定义:class AA {static void Show( ){ System.out.println(“我喜欢Java!”); } }class BB { void Show( ){ System.out.println(“我喜欢C++!”); } } 若已经使用AA类创建对象a和BB类创建对象b,则下面哪一个方法调用是正确的:( AC )A、a.Show( )B、AA.Show( );b.Show( ) BB.Show( );C、AA.Show( );D、a.Show( );b.Show( ); BB.Show( );19.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。

相关文档
最新文档