文档库 最新最全的文档下载
当前位置:文档库 › java期末复习试题

java期末复习试题

java期末复习试题
java期末复习试题

学号:______________ 姓名:___________ 班级:______________日期:__________________ (说明:本次测试除题型相近外, 也是期末考试内容的补充,请认真完成上传FTP和复习备考!)

一、填空题

1、Java源程序文件的扩展名是,编译源程序的命令是__javac _________。

2、Java程序可分为___applet___________和__applications两种类型。

3、声明静态成员的关键字是____________static___,定义一个接口的关键字是___interface___________。

4、创建包的语句是____package pack1 \package pack2___引用X包中的Y包的MyClass 类_________________________________。

5、_Object________类是所有Java 类的直接或者间接父类。

6、转义字符_\t____能够实现“将输出内容跳到下一个制表位”的功能。

7、假设在程序中已执行:Calendar current=new GregorianCalendar();语句,则返回的是__当前时间的年份__________________________。

二、单项选择题

1、以下哪个是应用程序main()方法的正确形式?【】

A. public static int main(String args[])

B. public static void main(String args[])

C. public static void MAIN(String args[])

D. public static void main(char args[])

2、请在Java预定义了的数据类型中,为“姓名”选择一种合适的数据类型:【】

A.int B.String C.boolean D. float

3、short型数据的取值范围为【】

A. -27 ~ 27-1

B. -216 ~ 216-1

C. -215 ~ 215-1

D. -231 ~ 231-1

4、下列标识符中,哪一个是合法的?【】

A. $person

B. 2ab

C. *point

D. this

5、已知 x=10,则条件表达式 (x>=5) && (x <=2) 的值是【】

A. 0

B. 1

C. true

D. false

6、下列程序片段的输出结果是【】

int X=0;

if (X>0) X=1;

switch(x)

{

break;

break;

}

A. 0

B. 4

C. 2

D. 1

2 3 3 0

7、在Java中定义常量的正确语句是【 c 】

A. int value=20;

B. const int VALUE=20;

C. final int VALUE=20;

D. int VALUE=20;

8、设有如下的程序代码,在执行完后x和y的值各是多少?【】

int x=8, y=3, z;

z=x++ + --y;

A. x=8, y=3

B. x=10, y=2

C. x=9, y=1

D. x=9, y=2

9、对于名为Myclass的类,以下哪种方式是定义无参数构造方法的正确形式?【 C 】

A. int Myclass( ){…}

B. void Myclass( ){…}

C. Myclass( ){…}

D. Myclass(int myClassObject ){…}

10、已有:String str=""; 现欲将str转换为对应的双精度浮点数,正确的语句为【 D】

A. (str) ;

B. (str);

C. (str);

D. (str);

11、基类中具有【】访问权限的成员,不允许在子类中直接对其进行访问或调用

A. public

B. private

C. protected

D. 缺省的(即package)

12、对于字符串s="java",下面哪个选项可以返回字符'v'在字符串中的位置?【】

A.('v'); B. ('v'); C. indexOf('v'); D. indexOf(s,'v');

13、以下哪一项是创建抽象类X的引用的正确方式?【 C 】

A. X x; x=new X();

B. X x=new X();

C. X x;

D. 以上均不正确

14、接口X声明了两个空方法m1()和m2(),当实现接口X时,以下哪个语法是正确的?【】

A. class Y extends X{

B. class Y extends X{

public void m1(){...} public void m1(){...}

public void m2(){...} }

}

C. class Y implements X{

D. class Y implements X{

public void m1(){...} public void m1(){...}

public void m2(){...} }

}

三、根据题目要求,把下面的程序补充完整

1、以下程序片段的功能是计算分段函数的值:输入x,求相应的y值

……

Double x,y ; .

我是主人忠诚的卫士,...

我是主人忠诚的卫士,...

___________________________

五、编程题

1.类的继承

(1)定义一个矩形类Rect,它封装了:

?

?两个成员变量(访问权限为private):

length FileInputStream(文件输入流)读文件

(1)步骤

①引入相关的类

②创建一个文件输入流对象

InputStream f = new FileInputStream(文件名); ;

public class testFile{

public static void main(String[] args){

File fname=new File("");

try{

InputStream f=new FileInputStream(____fname________________);

int size=()____________;

for(int i=0;i

(char) ()________________ );件处理编程步骤:

①创建运行窗体和独立组件对象;

②确定事件源、事件;

③为事件源注册对应事件侦听器对象;

④实现事件侦听器接口方法;

⑤运行主程序引发相应事件,观察事件处理结果。

(1) 利用监听器接口中的方法处理事件

实例10-2功能:在文本框中输入“123张小明”,当点击“确认”按钮时,下面的标签中将显示:“您输入了:123张小明”字样。

;

class ButtonFrame extends Frame implements ActionListener (1){

Button btn=new Button("确认");

Label lb=new Label(" ");

TextField txt=new TextField(10);

ButtonFrame() {

super("实例10-2");

setLayout(new FlowLayout());

setBackground;

setSize(200,100);

;

(2) (this) ;作过程: 当输入用户或密码不正确时光标留在对应文本框处,弹出请输入正确用户或密码提示对话框:当输入用户和密码正确时弹出欢迎对话框.请组织程序记住步骤和方法.

4.采用JDBC-ODBC桥式的数据库连接的主要步骤:

①创建数据源(使用JDBC-ODBC桥式驱动程序时必需);

②注册、加载特定的驱动程序;

③创建连接-- Connection对象;

④利用Connection对象生成Statement对象;

⑤利用Statement对象执行SQL语句,如查询、更新、插入、删除等;

⑥若是执行查询语句,还要从ResultSet读取数据;

⑦关闭ResultSet、Statement、Connection等。

(1) JDBC_ODBC桥方式查询数据库实例

import .*__________;

(2) 说明如下:

①服务器程序能够处理多个客户的请求,并向客户端发送一个“你好”字符串;

②客户端与服务器连接后,读取一行服务器的信息,在屏幕上输出信息;

④本程序中使用端口号为2345(大于1024)。

(3) 答:

1) 服务器端代码主要片段:

2) 客户端代码主要片段:

6. JUnit框架组成,即单元测试步骤和方法.

(1) 常用类()接口说明如下:

①Test接口——运行测试和收集测试结果

②TestCase抽象类——定义测试中固定方法。TestCase是Test接口的抽象实现,(不能被实例化,只能被继承)其构造函数TestCase(string name)根据输入的测试名称name创建一个测试实例。

③Assert包含了一组静态的测试方法,用于期望值和实际值比对是否正确,即测试失败,Assert类就会抛出一个AssertionFailedError异常,JUnit测试框架将这种错误归入Failes并加以记录,同时标志为未通过测试。

④TestSuite类负责组装多个Test Cases。待测得类中可能包括了对被测类的多个测试,而TestSuit负责收集这些测试,使我们可以在一个测试中,完成全部的对被测类的多个测试。

⑤TestResult结果类集合了任意测试累加结果,通过TestResult实例传递个每个测试的Run()方法。TestResult 在执行TestCase是如果失败会异常抛出

java期末考试知识点总结

java知识点总结 应同学要求,特意写了一个知识点总结,因比较匆忙,可能归纳不是很准确,重点是面向对象的部分。 java有三个版本:JAVA SE 标准版\JAVA ME移动版\JAVA EE企业版 java常用命令:java, javac, appletview java程序文件名:.java, .class java的两类程序:applet, application; 特点,区别,这两类程序如何运行 java的主方法,主类,共有类;其特征 java的数据类型,注意与C++的不同,如字符型,引用型,初值 java与C++的不同之处,期中已总结 java标记符的命名规则 1)标识符有大小写字母、下划线、数字和$符号组成。 2)开头可以是大小写字母,下划线,和$符号(不能用数字开头) 3)标识符长度没有限制 4)标识符不能使关键字和保留字 面向对象的四大特征 抽象、封装、继承、多态 封装,类、对象,类与对象的关系,创建对象,对象实例变量 构造函数,默认构造函数,派生类的构造函数,构造函数的作用,初始化的顺序,构造方法的重载 构造函数:创建对象的同时将调用这个对象的构造函数完成对象的初始化工作。把若干个赋初值语句组合成一个方法在创建对象时一次性同时执行,这个方法就是构造函数。是与类同名的方法,创建对象的语句用new算符开辟了新建对象的内存空间之后,将调用构造函数初始化这个新建对象。 构造函数是类的特殊方法: 构造函数的方法名与类名相同。 构造函数没有返回类型。 构造函数的主要作用是完成对类对象的初始化工作。 构造函数一般不能由编程人员显式地直接调用。 在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。 类的修饰符:public类VS 默认; abstract类; final类; 1)类的访问控制符只有一个:public,即公共的。公共类表明它可以被所有其他类访问和引用。 若一个类没有访问控制符,说明它有默认访问控制特性,规定该类智能被同一个包中的类访问引用(包访问控制)。 2)abstract类:用abstract修饰符修饰的类被称为抽象类,抽象类是没有具体对象的概念类,抽象类是它所有子类的公共属性集合,用抽象类可以充分利用这些公共属性来提高开发和维护效率。 3)final类:被final修饰符修饰限定的,说明这个类不能再有子类。所以abstract与final 不能同时修饰一个类。 域和方法的定义 1)域:定义一个类时,需要定义一组称之为“域”或“属性”的变量,保存类或对象的数据。

java ee 期末试题 (1)要点

1、下列哪一项不是Java EE的常用技术(D) A、JSP B、Hibernate C、Spring D、JNDB 2、servlet与一般Java类的相同点是什么?(D) A、 B、Servlet是运行在Web服务器的一个Web组件 C、Servlet通常是通过HTTP协议回复Web客户端的请求 D、Servlet是运行在Web容器的Java类 3、以下哪一个是市场上流行的Java EE服务器(A) A、Apache B、tomcat C、glassfish D、netbeans 4、EJB的作用是(C) A、Servlet组件和JSP组件 B、用于丰富客户端图形界面显示 C、通过RMI/IIOP协议与EJB容器通信远处电泳EJB的功能方法,进而完成业务处理。 D、GUI交互界面的开发,负责与系统用户的交互 5、分析以下程序: public class x{ public static void main(String[]args){ String ol=new String("ABV"); String o2=new String("ABV"); if(o1.equals(o2)){ System.out.println("Equal"); } }该程序的执行结果是( B )。 A. 程序执行后无输出 B. 程序执行后输出“Equal” C. 程序在第5行出现编译错误 D. 程序执行后出现异常 6、执行完下面的程序片段后,下面哪些结论是正确的?(B) int a,b,c; a=1; b=2; c=(a+b>3?a++:++b); A. a的值是2,b的值是3 B. a的值是1,b的值是3 C.a的值是1,b的值是2 D.c的值是false 6、Struts框架的控制器主要由(C )负责。 A. EJB

javaSE选择题50道判断题30道

一、不定项选择题:(50题) 1.下列关于JDK、JRE和JVM的描述,正确的是?D A.JRE中包含了JDK,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JDK中包含了JRE,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 2.以下关于JVM的叙述,正确的是?AC A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件 D.JVM支持Java程序运行,它能够直接运行Java源代码文件 3.JVM在执行一个Java类时,大致采用以下过程?A A.装载类一>校验类一>执行类中的代码 B.装载类一>执行类中的代码一>校验类 C.校验类一>装载类一>执行类中的代码 D.执行类中的代码一>装载类一>校验类 4.以下关于Java文件名的叙述,正确的有?AD A.Java源文件的扩展名应为.java B.Java字节码文件的扩展名应为.java C.一个Java源文件中只能包含一个Java类 D.Java源文件的文件名应与文件中被public修饰的类的类名一致 5.下列哪项不是int类型的字面量?C A.20 B.077 C.\u03A6 D.0xABBC 6.下列哪项不属于Java语言的基本数据类型?B A.int B.String C.double D.boolean 7.下列哪项不是有效的标识符?AC A.2test B.userName C.$car.text D._password

8.现有如下五个声明: Line1: int _hi=6; Line2:int $dollars=8; Line3: int %opercent=9; Line4: int big=Integer.getlnteger("7"); Line5: int a_really_really_really_long_variable_name=5 ; 哪行无法通过编译?B A.Line1 B.Line3 C. Line4 D. Line5 9.表达式:double d = 1-2/5*5+2*5;d的值是哪项?D C.9 D.11 10.现有代码片段: String s="123"; String s1=s+456; 请问s1的结果是哪项?A A.123456 B.579 C.编译错误 D.运行时抛出异常 11.现有: 1.class Test4 { 2. public static void main (String [] args) { 3.boolean x=false; 4.boolean y=true; 5.short z=42; 6. 7. if((z++==42)&&(y==true))z++; 8. if((x==false)||(++z==45))z++; 9. 10. System. out.println("z="+z); 11. } 12.} 结果为:C A. z=42

JAVA复习资料

第一章 1.Given the following, 1. interface Base { 2. boolean m1 (); 3. byte m2(short s); 4. }Which code fragments will compile?(Choose all that apply.) A.interface Base2 implements Base { } B.abstract class Class2 extends Base { public boolean ml() { return true; } } C.abstract class Class2 implements Base { } D.abstract class Class2. implements Base { public boolean m1() { return (true); } } E.class Class2 implements Base { boolean m1( ) { return false; } byte m2(short s) { return 42; } } 2. Which declare a compilable abstract class? (Choose all that apply.) A.public abstract class Canine { public Bark speak(); } B.public abstract class Canine { public Bark speak() { } } C.public class Canine { public abstract Bark speak(); } D.public class Canine abstract{ public abstract Bark speak(); } 3. Which is true? (Choose all that apply. ) A."X extends Y" is correct if and only if X is a class and Y is an interface. B."X extends Y" is correct if and only if X is an interface and Y is a class. C."X extends Y" is correct if X and Y are either both classes or both interfaces. D."X extends Y" is correct for all combinations of X and Y being classes and/or interfaces. 4. Which are valid declarations? (Choose all that apply.) A.int $x; B.int 123; C.int _123; D.int #dim; E.int %percent; F.int *divide; G.int central_sales_region_Summer_2005_gross _sales 第二章 1. Which statement(s) are true? (Choose all that apply.) A.Has-a relationships always rely on inheritance. B.Has-a relationships always rely on instance variables. C.Has-a relationships always require at least two class types. D.Has-a relationships always rely on polymorphism. E.Has-a relationships are always tightly coupled. 2.Given: class Clidders {public final void flipper() { System.out.println("Clidder"); }} public class Clidlets extends Clidders { public void flipper() { System.out.println("Flip a Clidlet"); super.flipper(); } public static void main(String [] args) { new Clidlets().flipper(); } } What is the result? A.Flip a Clidlet B.Flip a Clidder

java期末复习题

五邑大学JAVA实用教材试卷模拟卷 一、单选题 1.下列哪些类声明是错误的( D ) A、class A B、public class A C、abstract class A D、protected class A 2.定义一个接口必须使用的关键字是( C ) A、public B、class C、interface D、static 3.访问权限是指对象是否可以通过“.”运算符操作自己的变量,或通过“.”运算符使用类中的方法,下列那个不是访问限制修饰符( A ) A、static B、public C、private D、ptotected 4.下列描述错误的是( D ) A、上转型对象不能操作子类新增的成员变量 B、上转型对象不能操作子类新增的方法 C、上转型对象可以操作子类继承或隐藏的成员变量 D、上转型对象不能操作子类重写的方法 5.JFrame对象默认的布局管理器是( B ) A、FlowLayout B、BorderLayout C、CardLayout D、null 6.定义类头时能使用的修饰符是( C )。 A、private B、static C、 abstract D、protected 7.下列哪一个import命令可以使我们在程序中创建输入/输出流对象( C ) A、import java.sql.*; B、import java.util.*; C、import java.io.*; D、import https://www.wendangku.net/doc/5d11506168.html,.*; 8.如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象( A ) A、FileInputStream B、FileOutputStream C、DataOutputStream D、FileWriter 9.下列描述错误的是(B ) A、abstract类不可以用new运算符创建对象 B、允许使用final修饰abstract方法 C、 abstract方法只允许声明,不允许实现 D、abstract类可以有abstract方法。 10.以下关于继承的叙述正确的是( A )。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 11.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。A、start( ) B、stop( ) C、init( ) D、paint( ) 12.在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。

java考试题型与要点

考试题型 一、选择题(20分,每题2分)10题 二、简答题(15分,每题5分)3题 三、程序填空(共45分,每空3分)3大题 四、编程题(20分)1大题 各章复习要点 第2 章Java基本语法 1、标识符 标识符的作用是用于标识程序中的各个元素。由字母、下划线(_)、美元符($)、数字(0~9)组成,数字不能开头。 2、关键字P20(浏览一下,留意学过的关键字) 3、数据类型 基本数据类型P20 图2-1 、P21 表2-1 各类型需要掌握的要点:类型名称、关键字,占用位数、取值范围(整数类型的取值范围取决 于占用位数,如:占用位数为n,则表示的范围是:-2n~2n-1) 4、运算符与表达式 自增、自减符号在变量的前后位置不同,表达式的结果是不一样的。 例如int a=1,b=2; System.out.print(a++>--b); 结果为false ++在a 变量后面,那表达式a++的值是取a 的值作为表达式的值,值为1。

--在b 变量之前,那表达式--b 的值是多少?先让b 自减1,而后在取b 的值作为表达式的值,即为1。最后a 自增1。 条件运算符?:例如:int x=-1,y; y=x>=0?x:-x; y 的值是? y 值为1 5、利用Scanner类输入 (1) 导入util 包。例如:import java.util.*; (2) 创建Scanner类对象引用。例如:Scanner s=new Scanner(System.in); (3) 获得键盘输入的数据,可以调用nextXXX()方法。获得整型数据,使用nextInt();获得双精度浮点数据,使用nextDouble();获得一字符串,使用nextLine()。例如int a=s.nextInt(); P29 例2-3 6、程序流程控制 顺序结构、选择结构(if(), ; if(), else, ; switch() case n,: ; [default: , ;])、循环结构(while(){ , }; do{, }while(); for(;;) , ) P49 例2-20、P60 例2-29 7、数组 一维数组的声明与创建 声明:类型数组名[ ] ;或类型[ ] 数组名; 创建:数组名=new 类型[数组长度]; 也可以声明与创建合并:类型数组名[ ]=new 类型[数组长度]; 注意等号左边的中括号中不要写出数组长度

java100道选择题含答案

1. 下列不可作为java语言标识符的是(D) A) a1 B) $1 C) _1 D) 11 2. 有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A) A) a1.java B) a1.class C) a1 D) 都对 3. 整型数据类型中,需要内存空间最少的是(D) A) short B) long C) int D) byte 4. 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( )

JAVA资料

1 (2) 2.输入和输出数据,JOptionPane类,Scanner类; (2) 3.产生随机数 (3) 4.数学类Math (3) 1)三角函数方法: (3) 2)指数函数方法: (4) 3)取整方法: (4) 4)min\max和abs方法 (5) 5.Arrays类 (5) 6.Random类 (6) 7.GregorianCalendar类 (7) 8.String类 (7) 7)字符串转换为一个字符数组 (9) 8)将字符串转换为字符数组 (9)

1. 1)调用System.currentTimeMillis()方法获得从1970年1月1日0点到现在的毫秒数; 2)System.exit(0);是个静态方法,它在System类中定义。调用这个方法 可以终止程序,参数0表示程序正常结束。 3)String s=String.format(“counts is%d and amount is%f”,5,45.56); System.out.println(s); 相当于:System.out.println(“counts is%d and amount is%f”,5,45,56); 4)对于void方法,return语句是不需要的,但它能用于终止方法并返回到方法的调用者。 5) 2.输入和输出数据,JOptionPane类,Scanner类; 输入: Javax.swing.JOptionPane; String input=JOptionPane.showInputDialog(null,x,y,JOptionPane.QUESTION_MESSAGE) ; String input=JOptionPane.showInputDialog(x); 使用确认对话控制循环: int option=JOptionPane.showConfirmDialog(null,”continue”); Yes按钮返回JOptionPane.YES_OPTION(0), No按钮返回JOptionPane.NO_OPTION(1), Canel按钮返回JOptionPane.CANCEL_OPTION(2); Scanner scanner=new Scanner(System.in); String str=scanner.next();//读取一个字符串。字符串用空格分隔

java考试要点

1、什么是平台无关性?Java怎样实现平台无关性? 答:平台无关性是指一个应用程序能够运行于不同的操作系统平台。Java采用虚拟机技术支持平台无关性,不同操作系统需要相应的不同的Java虚拟机,由Java虚拟机执行Java源程序(*.java)编译生成的字节码文件(*.class),而不是由操作系统直接执行通常高级语言生成的可执行文件(*.exe)。 2、面向对象技术的三个核心特性是什么? 答:①类的封装性;②类的继承性;③类的多态性; 3、什么是封装?为什么要将类封装起来?封装的原则是什么? 答:封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”。为了增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,一特定的访问权限来使用类的成员。原则: 1、把尽可能多的东西藏起来.对外提供简捷的接口。 2、把所有的属性藏起来。 4、什么是多态性?什么是方法的重载?方法的重载和覆盖有什么区别? 答:多态是指一个方法可以有多种实现版本。方法重载:同一个类中的多个方法可以同名但参数列表必须不同。重载与覆盖的区别:1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。3、覆盖要求参数列表相同;重载要求参数列表不同。4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。 5、什么是接口?接口和抽象类有哪些相同之处和不同之处? 答:接口是一组常量和抽象方法的集合;相同点:1.两者都包含抽象方法,约定多个类共用方法的参数列表和返回值。2.两者都不能被实例化。3.两者都是引用数据类型,其变量可被赋值为子类或实现接口类的对象。不同点:1.抽象类约定多个子类之间共同使用的方法;接口约定多个互不相关类之间共同使用的方法。2.抽象类与子类之间采用单重继承机制;一个类实现多个接口则实现了多重继承的功能。3.抽象类及其类中成员具有与普通类一样的访问权限;接口的访问权限有public和缺省两种,接口中成员的访问权限均是public。4.抽象类中可以包含非抽象方法,也可以生命构造方法;接口中的方法全部是抽象方法,不能声明构造方法。5.抽象类中可以声明成员变量,子类可以对该变量赋值;接口中只能声明常量。 6、什么是单重继承?什么是多重继承?类的层次体系为什么需要多重继承?单重继承有什么缺点?既然 有缺点,为什么java仍然采用单重继承?java怎样实现多重继承? 答:单重继承是指子类只能继承一个父类的属性和操作 多重继承是指子类可以继承了多个父类的属性和操作。因为单继承使得java结构简单,层次清楚,易于管理,更安全可靠,避免了c++中因多重继承而引起的难以预测的冲突。Java通过接口实现多重继承。 7、在什么情况下需要申明内部类?内部类有哪些特性? 答:当结构作为数组的元素类型时,或当一个类中需要使用结构时,可以将结构声明为内部类。 特征:内部类不能与外部类同名;内部类具有封装性;内部类具有继承性;内部类具有抽象性;使用点运算符“.”引用内部类;内部类具有类成员的4种访问权限;内部类具有静态特征。

JAVA填空选择题库

一、选择题(共10道题,每道题有4个选项,只有一个选项是正确的;每道题2分,共计20分) 1.下面哪一个文件包含名为HelloWorld的类的字节码(B)。 A.HelloWorld.java B.HelloWorld.class C.HelloWorld.exe D.HelloWorld.javadoc 2.JDK6.0版本成功安装后,在指定的安装位置将出现jdk1.6.0_21目录,该目录下用于存放编译器、解释器等各类工具的子目录是(C)。 A.jre B.lib C.bin D.demo 3.编译运行以下程序后,关于输出结果的显示正确的是(D)。 public class Test{ public static void main(String args[ ]){ byte b=2, e=3; //---------------1 byte f=b+e; //----------------2 System.out.println(f); } } A.编译通过,运行时打印输出5B.编译通过,运行时打印输出23 C.编译不通过,在//1处有错误,不能这样定义变量 D.编译不通过,在//2处有错误,因为此处f必须是一个int类性的变量 4.类的设计要求它的某个成员变量不能被任何外部类直接访问,则使用下面的哪个修饰符能够获得需要的访问控制(A)A.private B.default C.protected D.public 5.已知给出以下代码,则下列选项中正确的是(C)。 public interface Top{ public void twiddle(String s); } A.public abstract class Sub implements Top{ public abstract void twiddle(String s){ } } C.public abstract class Sub implements Top{ } B.public class Sub extends Top{ public void twiddle(Integer i){ } } D.public class Sub implements Top{ public void twiddle(Integer i){ 6.下列哪个选项可以计算出角度为42度的余弦值(B)。 A.double d=Math.cos(42); B.double d=Math.cos(Math.toRadians(42)); C.double d=Math.conine(42) ; D.double d=Math.cos(Math.toDegrees(42)); 7.给定一个未完成的方法,代码如下: 1: 2:{ success = connect( ); 3:if (success==-1) { 4:throw new TimedOutException(); 5:} 6:} 已知TimedOutException不属于RuntimeException,那么在第一行的位置上填写哪段代码能够完成该方法的声明?(D)A.public void method() B.public void method() throw TimedOutException C.public void method() throws RuntimeException D.public void method() throws TimedOut Exception 8.当编译并运行下列代码时其运行结果是(A)。

java程序设计复习资料.doc

1、简述java语言的特点? Java语言是目前使用最为广泛的网络编程语言之一(1分) 具有面向对象(1分) 与平台无关性(1分) 多线程性(1分) 动态性等特点(1分) 2、简述Java程序的开发过程 1使用一个文字编辑器,编写源文件。(1分) 2使用java编译器,编译源文件得到字节码文件。(2分) 3运行java程序,分两种java应用程序必须通过java解释器来解释执行,java小应用程序必须使用解释器和浏览器运行程序。(2 分) 3、java源文件的命名规则是什么? 如果源文件中有多个类,那么只能有一个类是public类(1分) 如果有一个类是public类,源文件的名字必须与这个类的名字完全相同,扩展名是java (2分) 如果源文件没有public类,源文件的名字只要和某个类的名字相同,并且扩展名是java (2分) 4、怎样区分应用程序和小应用程序? 一个java应用程序必须且只有一个类含有main方法,这个类称为应用程序的主类,其 main 方法必须被说明为public static void (1分) —个Java Applet小应用程序不再需要main方法,但必须有一个类扩展了Applet类,即它是Applet类的主类。(2.5分) 5、Java中共有哪些基本数据类型? 基本类型共有8种,分四类分别是(1分) 逻辑型(1分) 字符型(1分) 整型(1分) 浮点型(1分) 6、Java中数据类型分别用什么符号来表示? 逻辑型用boolean表示(1分)

字符型用char表示(1分)

整型共有4种分别是byte、short、long、int (2分)浮点型共两种float和double (1分) 7、简答标示符的根I念及定义原则 标示符是用来标识类名、变量名、方法名、类型名等有效字符序列。(2.5分) Java语言规定标示符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字,及java 中的关键字不能用作标示符。(2.5分) &简答什么是强制类型转换及转换格式 较少的变量的值赋给占字节较多的变量时, 系统自动完成数据类型的转换(2.5分) 格式数据类型名变量名或表达式(2.5 分) ++X表示在使用x之前,先使x的值加1(2.5 分) x++表示在使用x之后,使x的值加1(2.5 分) 当把一种数据类型变量的值赋给另一种数据类型时会用到数据转换。当把在内存中占字节数 9、简答表达式++x和x++的区别 10、Java中常用的运算符按功能分有哪些 Java运算符按功能分6种,具体如下(1分)算术运算符、关系运算符、逻辑运算符(2分)位运算符、赋值运算符、条件运算符(2分) 11、Java中结构化程序设计有哪三种基本流程及分别对应java中那些语句 结构化程序设计有顺序、分支、循环三种基本流程(2分) java中的分支语句包括if语句、switch语句(1分) 循环语句包括while语句、do?while语句、for?语句(1分) 其他如对象、变量定义语句、赋值语句、方法调用语句等都是顺序语句。(1分) 12、在一个循环中使用break和continue语句有什么不同的效果? 在循环中使用break语句将使循环终止,流程跳转到break语句所在的循环外面的第一个语 句继续执行(2.5分) 在循环中使用continue语句将提前结束本次循环,流程跳转到continue语句所在循环的第 一个语句继续执行(2.5分) 13、package语句与import语句分别作用是什么? package语句作为java源程序的第一条语句,指明该源文件定义的类所在的包。(2.5分)import语句作用是为了能使用java提供的类,可以使用import语句来引入所需要的类。(2.5 分)

《JAVA设计模式》期末考试复习资料复习进程

《JAVA设计模式》复习资料 一、单项选择题 1.设计模式起源于() A、机械设计 B、建筑工程设计 C、水利工程设计 D、工业电力化设计 2.“不要和陌生人说话”是()原则的通俗表述。 A、接口隔离 B、里氏替换 C、依赖倒置 D、迪米特 3.目前常见的设计模式主要有()种。 A、23 B、21 C、32 D、28 4.以下关于单一职责原则的叙述不正确的是()。 A、单一职责原则的英文名称是Single Responsibility Principle. B、单一职责原则要求一个类只有一个职责 C、单一职责原则有利于对象的稳定,降低类的复杂性 D、单一职责原则提高了类之间的耦合性 5.以下关于依赖倒置原则的叙述不正确的是() A、依赖倒置原则的简称是DIP B、高层模块不依赖于低层模块,低层模块依赖于高层模块 C、依赖倒置原则中高层模块和低层模块都依赖于抽象 D、依赖倒置原则实现模块间的松耦合 6.下面关于单例模式说法错误的是() A、单例模式是指一个类只有一个实例 B、单例类从实现方式上分为懒汉式和饿汉式 C、单例类从功能上分为状态单例类和无状态单例类 D、可以通过继承的方式对单例类进行扩展得到功能更丰富的单例类 7.下面关于工厂方法模式说法错误的是()。 A、工厂方法模式使一个类是实例化延迟到其子类中 B、工厂方法模式中具有抽象工厂、具体工厂、抽象产品和具体产品4个角色 C、工厂方法模式可以处理多个产品的多个等级结构 D、工厂方法模式可以屏蔽产品类 8.在以下情况不适合使用责任职责链模式() A、有多个对象可以处理请求,哪个对象处理该请求在运行时刻自动确定。 B、在需要用比较通用和复杂的对象指针代替简单的指针的时候。 C、你想在不明确指定接收者的情况下,向多个对象中的一个提交一个请求。 D、一个请求需要一系列的处理工作。 9.当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用()模式 A、结构型 B、创建型 C、行为型 D、以上都可以 10.以下用来描述适配器模式的是() A、表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 B、定义一个用于创建对象的接口,让子类决定实例化哪一个类。

Java高级编程选择题

1.Thread类用来创建和控制线程,一个线程从下面( )方法开始执行。 A.init() B.start() C.run() D.notifyAll() 2.实现线程体的方式除了继承Thread类,还可以实现( )接口。 A.Cloneable B.Runnable C.Iterable D.Serializable 3.哪个方法是实现Runnable接口所需的? A.wait() B.run() C.stop() D.update() 4.下面让线程休眠1分钟的正确方法是() A.sleep(1) B.sleep(60) C.sleep(1000) D.sleep(60000) 5.以下哪个最准确描述synchronized关键字? A.允许两线程并行运行,而且互相通信; B.保证在某时刻只有一个线程可访问方法或对象; C.保证允许两个或更多处理同时开始和结束; D.保证两个或更多线程同时开始和结束。 6.于Java语言的内存回收机制,下列选项中最正确的一项是( )。 A.Java程序要求用户必须手工创建一个线程来释放内存 B.Java程序允许用户使用指针来释放内存 C.内存回收线程负责释放无用内存 D.内存回收线程不能释放内存对象 7.在java程序中,下列关于线程的说法错误的是: ( ) A.run方法是运行线程的主体 B.多个进程运行时执行顺序是按顺序执行的 C.如果线程死亡,它便不能运行 D.在java中,高优先级的可运行线程会抢占低优先级线程 8.编写线程类,要继承的父类是: A.Object

B.Runnable C.Exception D.Thread 9.启动一个线程的方法是哪项? A . join ( ) B . runf ) C . start ( ) D . sleep ( ) 10.编写线程类,可以通过实现那个接口来实现? A.Runnable B.Throwable C.Serializable https://www.wendangku.net/doc/5d11506168.html,parable 11.当一个处于阻塞状态的线程解除阻塞后,它将回到哪个状态? A.运行中状态 B.结束状态 C.新建状态 D.可运行状态 12.在网络编程中,为了定位一个进程,我们需要确定() A.端口号 B.IP地址 C.IP地址和端口号 D.都不是 13.为了从文本文件中逐行读取内容,应该使用哪个处理流对象? A.BufferedReader B.BufferedWriter C.Bufferedlnputstream D.Bufferedoutputstream 14.要使用java程序访问数据库,则必须首先与数据库建立连接,在建立连接 前,应加载数据库驱动程序,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 15.要使用java程序访问数据库,则必须首先与数据库建立连接,该语句为() A.(“ rs= (“”,””,””).createStatement() B.Statement st= (“”,””,””).createStaement() 16.Java程序与数据库连接后,需要查看某个表中的数据,使用下列哪个语句?

JAVA期末复习资料2

一、判断题 1、在Java程序中发生异常时,JVM会找到每个符合条件的catch都执行一次。() 2、在Java程序中异常分为运行时异常和非运行时异常,非运行异常必须进行处理() 3、异常处理的try-catch块后必须有finally块。() 4、异常处理器的排列次序影响处理异常的方法。() 5、用catch(Exception exception)语句可以捕获所有异常和错误。() 6、启动多线程必须调用start()方法, 如果调用run()方法则没有启动新的线程() 7、run()方法是运行线程的主体,若run方法运行结束,线程就消亡了。 () 8、线程可以用yield()方法使同优先级的线程运行。( ) 9、一个线程创建并启动后,它将执行自己的run()方法。() 10、线程可以用yield()方法使较低优先级的线程运行。() 11、每个Java线程的优先级都设置在常数1~12之间,默认的优先级设置为常数6。() 12、JFrame,JPanel,JApplet和JButton四种组件都属于容器组件。( ) 13、BorderLayout是面板(JPanel)的缺省布局管理器。( ) 14、BorderLayout最多可以使用5个组件。( ) 15、一个面板(JPanel)不能被加入另一个面板(JPanel)中。( ) 16、菜单需要一个JMenuBar对象,以使他们能被添加到JFrame。( ) 17、标签(JLabel)可以在屏幕上显示一个字符或一幅图片。() 18、BorderLayout是容器javax.swing.JFrame默认的布局管理器。() 19、JTextArea可以用来接收多行文本的输入。() 20、在Java坐标系统中,X值从左向右增加。() 21、BorderLayout布局管理器把组件排列在北、南、东、西和中间区域。() 22、边界布局管理器(BorderLayout)把容器分成5个区域,每个区域只能放一个组件。( ) 23、一个组件可以注册一个或多个事件监听器。( ) 24、通过类https://www.wendangku.net/doc/5d11506168.html,.URL中的成员方法可获得网络资源定位器的相关信息() 25、Socket的实例对象调用其成员方法getInputStream来获得该Socket所对应的输入流。() 26、数据报(DatagramPacket)传输是不可靠的,无法保证包按顺序到达。() 27、当Socket连接上面的传输结束后,服务器执行Socket的shutdown方法来关闭连接。() 二、选择题 1、下说法中错误的一项是()。 A、线程一旦创建,则立即自动进行 B、线程创建后需要调用start()方法,将线程置于可运行状态 C、调用线程的start()方法后,线程也不一定能立即执行 D、线程处于可运行状态,意味着它可以被调度

java期末考试复习知识点

6.1.2字符串类几个常用方法 String类定义了许多方法,下面是几个最常用方法。 public int length():返回字符串的长度,即字符串包含的字符个数。注意,对含有中文或其他语言符号的字符串,计算长度时,一个符号作为一个字符计数。 public char charAt(int index):返回字符串中指定位置的字符,index表示位置,范围为0~s.length()-1。 public String concat(String str):将调用字符串与参数字符串连接起来,产生一个新的字符串。 –public String substring(int beginIndex, int endIndex):从字符串的下标beginIndex开始到endIndex结束产生一个子字符串。 –public String substring(int beginIndex):(子链\子串);从字符串的下标beginIndex开始到结束产生一个子字符串。 –public String replace(char oldChar, char newChar):将字符串中的所有oldChar 字符改变为newChar字符,返回一个新的字符串。 –public String to Upper Case():将字符串转换成大写字母。 – public String to Lower Case():将字符串转换成小写字母。public String trim():返回去掉了前后空白字符的字符串对象。 (vt.装饰; 修剪; 整理; adj.整齐的,整洁的; 修长的; 苗条的; 修剪; 整齐; 健康状态; 装束;) public boolean isEmpty():返回该字符串是否为空(""),如果length()的结果为0,方法返回true,否则返回false。 下面程序要求从键盘输入一个字符串,判断该字符串是否是回文串。一个字符串,如果从前向后读和从后向前读都一样,则称该串为回文串。例如,“mom”和“上海海上”都是回文串。 算法思想:对于一个字符串,先判断该字符串的第一个字符和最后一个字符是否相等,如果相等,检查第二个字符和倒数第二个字符是否相等。这个过程一直进行,直到出现不相等的情况或者串中所有字符都检测完毕,当字符串有奇数个字符时,中间的字符不用检查。 6.1.7 String对象的不变性 在Java程序中一旦创建一个String对象,就不能对其内容进行改变,因此说Java的String对象是不可变的字符串。 有些方法看起来是修改字符串,但字符串修改后产生了另一个字符串,这些方法对原字符串没有任何影响,原字符串永远不会改变。请看下面的例子。 ?程序6.6 ChangeString.java public class ChangeString{ public static void main(String[] args){ String s = new String("Hello,world"); s.replace('o','A'); // s的值并没有改变 s = s.substring(0,6).concat("Java"); s.toUpperCase(); // s的值并没有改变 System.out.println(s); } } 程序运行结果为:

相关文档