java-试题--最新版

java-试题--最新版
java-试题--最新版

java-知识点汇总--试题

一、填空

1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。

2、Java程序的运行环境简称之为JRE_____。

3、编译Java程序需要使用_javac_____命令。

4、javac.exe和java.exe两个可执行程序存放在JDK安装目录的bin______目录下。

5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。

二、选择

1、以下选项中,哪些属于JDK工具?(多选)ABCD

A、Java编译器

B、Java运行工具

C、Java文档生成工具

D、Java打包工具

2、Java属于以下哪种语言?C A、机器语言B、汇编语言C、高级语言

3、下面哪种类型的文件可以在Java虚拟机中运行?D D、.class

4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种?B A、Java文档制作工具B、Java解释器C、Java编译器

5、5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?B A.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre;

三、问答

1、简述Java的特点。面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、2、简述JRE与JDK的区别JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。JDK(Java Development Kit,Java 开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。初学者学习和使用Java语言时,首先必须下载和安装JDK。JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。

第二章

、Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。

int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double 双精度浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true 和false两个值,分别占一个字节。

2、如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式。例如定义int x = 2,y = 0; boolean b = x < y & x / 2 > 0表达是会发生被0除异常,因为x / y的表达式执行了。而boolean b = x < y & x / 2 > 0是不会出现这种异常的,因为x < y为false,表达式x / y不会执行。

3、方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法

冒泡排序:

public class Test03 { public static void main(String[] args) { int[] arr = { 25, 24, 12, 76, 101, 96, 28 }; for (int i = 0; i < arr.length -1; i++) { // 定义内层循环for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 比较相邻元素// 下面的三行代码用于交换两个元素int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); // 打印元素和空格} }

第三章

1、构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用return语句返回一个值

2、单例模式可以保证在整个程序运行期间针对该类只存在一个实例对象。

Java中的变量可分为两种数据类型,分别是_基本数据类型_____和_引用数据类型_____。5、在Java中,byte类型数据占____1__个字节,short类型数据占__2____个字节,int类型数据占___4___个字节,long类型数据占____8__个字节。

面向对象的三大特征是封装性_、_继承性_____和__多态性____。2、在Java中,可以使用关键字__new____来创建类的实例对象。3、定义在类中的变量被称为__成员变量____,定义在方法中的变量被称为局部变量______ 4、面向对象程序设计的重点是_类___的设计,__类____是用来创建对象的模板。5、在非静态成员方法中,可以使用关键字_this__访问类的其它非静态成员。6、当一个对象被当成垃圾从内存中释放时,

它的__finalize()____方法会被自动调用。7、被static关键字修饰的成员变量被称为_静态变量_,它可以被该类所有的实例对象共享。8、在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为_内部类_____。9、在Java中,提供了一个_javadoc_____命令,用于将程序中的文档注释提取出来,生成HTML格式的帮助文档。

10、所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用_private_____关键字来修饰。

第四章:

在Java语言中,允许使用已存在的类作为基础创建新的类,这种技术我们称为继承______。2、一个类如果实现一个接口,那么它就需要实现接口中定义的全部_方法_____,否则该类就必须定义成_抽象类_____。3、在程序开发中,要想将一个包中的类导入到当前程序中,可以使用_import_____关键字。4、一个类可以从其它的类派生出来,派生出来的类称为_子类_____,用于派生的类称为_基类_____或者__父类____。

5、JDK中定义了大量的异常类,这些类都是_Exception_____类的子类或者间接子类。

6、定义一个Java类时,如果前面加使用_final_____关键字修饰,那么该类不可以被继承。

7、如果子类想使用父类中的成员,可以通过关键字__super____引用父类的成员。

8、在Java语言中,所有的类都直接或间接继承自_Object_____类。9、异常的捕获通常由try、catch两部分组成,_try_____代码块用来存放可能发生异常,_catch_____ 代码块用来处理产生的异常。10、在Java语言中,要想是将一个已编译的类打包成jar 文件,可以使用的命令是_jar-cvf_____,要想在命令行窗口运行jar文件,可以使用的命令是__java-jar___。

1、什么是方法重写?在继承关系中,子类的方法与父类的某一方法具有相同的方法名、返回类型和参数列表,则称子类的该方法重写(覆盖)父类的方法。

2、什么是多态?多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。

3、抽象类和接口的区别?在Java中,使用abstract关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。由于接口的特殊性,在定义时需要使用interface关键字。

第六章:

1、在Java中定义了两个类来封装对字符串的操作,它们分别是String_和_StringBuffer____。

2、Java中的操作日期的类有_Date___、_Calendar___、DateFormat____等。

3、在程序中若想取得一个Runtime实例,则可以调用Runtime类的静态方法getRnutime()_____。

4、Math类中用于计算所传递参数平方根的方法是_sqrt()____。

5、Java中专门用于将日期格式化为字符串的类是_DateFormat____。

6、Math类中有两个静态常量PI和E,分别代表数学常量_π___和_e___。

7、Java中的用于产生随机数的类是_Random___,它位于java.util____包中。8、String类中用于返回字符串字符个数的方法是_length()____。9、System类中所提供的属性和方法都是_静态___的,想要引用这些属性和方法,直接使用System类调用即可。10、已知sb 为StringBuffer 的一个实例,且sb.toString() 的值为"abcde ",则执行sb. reverse()后,sb.toString()的值为_”edcba_”___。

1、String和StringBuffer有什么区别?String类是不可变类,即字符串值一旦初始化后就不可能改变。StringBuffer是可变字符串类,类似String的缓冲区,可以修改字符串的值。

2、Date和Calender类有什么区别和联系?Date类用来表示某个特定的瞬间,能够精确到毫秒。而在实际应用中,往往需要把一个日期中的年、月、日等信息单独返回进行显示或处理,这个类中的大部分方法都已被标记过时。Calender类基本取代了Date类,该类中定义了一系列用于完成日期和时间字段操作的方法。Calendar的getTime()方法,getTime()返回一个表示Calendar时间值的Date对象,同时Calendar有一个setTime(Date date)方法,setTime()方法接收一个Date对象,将Date对象表示的时间值设置给Calendar对象,通过这两个方法就可以完成Date和Calendar 对象之间的转换。

I/O

1、Java中的IO流,按照传输数据不同,可分为____和____。

2、在Java中,____类用于操作磁盘中文件和目录,位于____包中。

3、在Java中,___类用来把两个或更多的InputStream输入流对象合并为单个InputStream输入流对象使用。

4、Java中提供了一个类____,它不但具有读写文件的功能,并且可以随机地从文件的任何位置开始执行读写数据的操作。

5、在Java 中,能实现线程间通信的流是____。

6、Java中提供了一个可以在读文件的同时记录行号的类,这个类是____,它是____的直接子类,它通过____和____方法设置和获取当前行号。

7、InputStreamReader类是用于将____转换为____。

8、System.out是____类的对象,称为标准输出流,调用System类的____方法可以实现标准输出流的重定向。

9、Java中一个字符占用两个

字节,所有字符采用的都是____码表。10、BufferedWriter的____方法可以写入一个换行符。

第8章IO(输入输出)一、填空题1、字节流、字符流2、File、java.io 3、SequenceInputStream 4、RandomAccessFile 5、管道流6、LineNumberReader、BufferedReader、setLineNumber(int)、getLineNumber() 7、字节流、字符流8、PrintStream、setOut(PrintStream out) 9、Unicode 10、newLine()

1、简述流的概念。

2、Java流被分为字节流、字符流两大流类,两者有什么区别?

3、简要说明管道流。

1、Java程序通过流来完成输入和输出,流是输入或输出信息的抽象。流通过Java的输入/输出系统与外设连接进行数据通信。流是抽象的对象,具体实现代码在java.io包中。

2、字节流的两个基类是InputStream和OutputStream,字符流的两个基类是Reader和Writer,它们都是Object 类的直接子类,字节流是处理以8位字节为基本单位的字节流类;Reader和Writer类是专门处理16位字节的字符流类。

3、管道流分为管道输入流(PipedInputStream)和管道输出流(PipedOutputStream),通常由一个PipedInputStream实例对象和一个PipedOutputStream实例对象相互连接而实现管道通信,PipedOutputStream向管道写入数据,PipedInputStream从管道中读取PipedOutputStream写入的数据,管道流主要用来完成线程之间的通信。

GU1、

1、在Java中,图形用户界面简称______,它的组件包含在______和______这两个包中。

2、为了避免实现监听器中定义的所有方法,造成代码的臃肿,在JDK中提供了一些______类,这些类实现了接口所有的方法,但是方法中没有任何代码,属于一种空实现。

3、在Java 中,______类相当于一个抽象的画笔对象,使用它可以在组件上绘制图形。

4、______负责监听事件源上发生的事件,并对各种事件做出响应处理。

5、大部分的Swing组件都是______类的直接或者间接子类,其名称都是在原来AWT组件名称前加上字母J。

6、AWT 事件有多种多样,大致可以分为______、______、______、______等。

7、如果点击Frame 窗口右上角的关闭按钮能将其关闭,那么这个Frame窗口添加了______监听器,并实现了监听器的实现了______方法。

8、对话框可以分为______和______两种。

9、每一个容器都有一个默认的布局管理器,如果不希望通过布局管理器对容器进行布局,可以调用容器的______方法将其取消。10、创建下拉式菜单需要使用三个组件,分别是______、______和______。

1,java.awt、javax.swing 2、适配器3、Graphics 4、事件监听器5、JComponent 6、窗体事件、键盘事件、鼠标事件、动作事件7、WindowListener、windowClosing(WindowEvent

e) 8、模态对话框、非模态对话框9、setLayout(null) 10、JMenuBar、JMenu、JMenuItem I1、实现时间监听的步骤

通过实现XxxListener接口或者继承XxxAdapter类实现一个事件监听器类,并对处理监听动作的方法进行重写创建事件源对象和事件监听器对象调用事件源的addXxxLisntener()方法,为事件源注册事件监听器对象

2、awt和swing的区别

AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交互的接口。AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系,当我们利用AWT 来构件图形用户界面的时候,我们实际上是在利用操作系统所提供的图形库。由于不同操作系统的图形库所提供的功能是不一样的,在一个平台上存在的功能在另外一个平台上则可能不存在。为了实现Java语言所宣称的"一次编译,到处运行"的概念,AWT 不得不通过牺牲功能来实现其平台无关性,也就是说,AWT 所提供的图形功能是各种通用型操作系统所提供的图形功能的交集。由于AWT 是依靠本地方法来实现其功能的,我们通常把AWT控件称为重量级控件。Swing 是在AWT的基础上构建的一套新的图形界面系统,它提供了AWT 所能够提供的所有功能,并且用纯粹的Java代码对AWT 的功能进行了大幅度的扩充。由于在Swing 中没有使用本地方法来实现图形功能,我们通常把Swing控件称为轻量级控件。AWT和Swing之间的基本区别:AWT 是基于本地方法的C/C++程序,其运行速度比较快;Swing是基于AWT 的Java程序,其运行速度比较慢。对于一个嵌入式应用来说,目标平台的硬件资源往往非常有限,而应用程序的运行速度又是项目中至关重要的因素。在这种矛盾的情况下,简单而高效的AWT 当然成了嵌入式Java的第一选择。而在普通的基于PC或者是工作站的标准Java应用中,硬件资源对应用程序所造成的限制往往不是项目中的关键因素,所以在标准版的Java中则提倡使用Swing,也就是通过牺牲速度来实现应用程序的功能。

简述java.awt包中提供了哪些布局管理器。

在java.awt包中提供了五种布局管理器,分别是FlowLayout(流式布局管理器)、BorderLayout (边界布局管理器)、GridLayout(网格布局管理器)、GridBagLayout(网格包布局管理器)和CardLayout(卡片布局管理器)。

简述在事件处理机制中所涉及到的概念

事件处理机制专门用于响应用户的操作,比如,想要响应用户的点击鼠标、按下键盘等操作,就需要使用AWT的事件处理机制。在学习如何使用AWT事件处理机制之前,首先向大家介绍几个比较重要的概念,具体如下所示:

1、事件对象(Event):封装了GUI组件上发生的特定事件(通常就是用户的一次操作)。

2、事件源(组件):事件发生的场所,通常就是产生事件的组件。

3、监听器(Listener):负责监听事件源上发生的事件,并对各种事件做出响应处理的对象(对象中包含事件处理器)。

4、事件处理器:监听器对象对接收的事件对象进行相应处理的方法。

TCP协议的特点是,即在传输数据前先在和建立逻辑连接。

2、在计算机中,端口号是用字节,也就是16位的二进制数表示,它的取值范围是

。3、TCP/IP协议被分为四个层,分别是

4、在JDK中,IP地址用类来表示的,该类提供了许多和IP地址相关的操作。。

5、使用UDP协议开发网络程序时,需要使用两个类,分别是和。

答案:

1、面向连接、客户端、服务器端

2、2、0-65535

3、链路层、网络层、运输层、应用层

4、InetAddress

5、DatagramPacket、DatagramSocket

1、网络通信协议是什么?

2、TCP协议和UDP协议有什么区别?

3、Socket类和ServerSocket类各有什么作用?

1、在Internet中传输数据都需要遵守一定的规则,这种规则通常被称作网络通信协议。网络通信协议对数据传输格式、传输速率、传输步骤等作了统一规定,通信双方必须共同遵守这个规定才能完成数据的交互。到目前为止,网络通信协议已经有很多种,其中TCP/IP协议在世界范围内应用最为广泛。

2、UDP协议是无连接通信协议,所谓的无连接就是指数据的发送端和接收端不建立逻辑连接。由于UDP协议消耗资源小,通信效率高,通常都会用于音频、视频和普通数据的传输。UDP协议在传输数据时不能保证数据的完整性,因此在传输重要数据时不建议使用UDP协议。TCP协议是面向连接的通信协议,即在传输数据前先在发送端和接收端建立逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。在TCP连接中必须要明确客户端与服务器端,由客户端向服务端发出连接请求,每次连接的创建都需要经过“三次握手”。

3、

ServerSocket类用于创建服务端程序,通过调用ServerSocket对象的accept()方法,接收来自客户端的请求。Socket类用于创建客户端程序,当客户端和服务端的两个Socket 建立了专线连接后,连接的一端既能向另一端连续写入字节,也能从另一端读取字节。Socket类中定义了getInputStream()方法返回Socket的输入流对象,定义了getOutputStream()

方法返回Socket的输出流对象。只要连接的一端向该输出流对象写入了数据,连接的另一端就能从其输入流对象中读取到。

java模拟试题附答案(一)

scjp模拟试题(一) Question No: 1 1.public class test ( 2. public static void main (String args[]) { 3. int i = 0xFFFFFFF1; 4. int j = ~i; 5. 6. } 7. ) What is the decimal value of j at line 5? A. 0 B. 1 C. 14 D. –15 E. An error at line 3 causes compilation to fail. F. An error at line 4 causes compilation to fail. 答案: C Question No: 2 Given: Integer i = new Integer (42); Long 1 = new Long (42); Double d = new Double (42.0); Which two expressions evaluate to True? (Choose Two) A. (i ==1) B. (i == d) C. (d == 1) D. (i.equals (d))

E. (d.equals (i)) F. (i.equals (42)) 答案: D, E Question No: 3 Exhibit : 1. public class test ( 2. private static int j = 0; 3. 4. private static boolean methodB(int k) ( 5. j += k; 6. return true; 6. ) 7. 8. public static void methodA(int i) { 9. boolean b: 10. b = i < 10 | methodB (4); 11. b = i < 10 || methodB (8); 12. } 13. 14. public static void main (String args[] ) ( 15. methodA (0); 16. system.out.printIn(j); 17. ) 18. ) What is the result? A. The program prints “0” B. The program prints “4” C. The program prints “8”

JAVA测试题(三套含答案)

1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4. 编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; "The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F C. _whatavariable D. _3_

6.内部数据类型byte的取值范围是B - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: "zero"); break; case 1: "one"); case 2: "two"); default: "default"); } B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: "default"); case 0:

软通动力面试题集

1.Struts的运行机制: Web应用初始化时,控制器加载分析配置文件(struts-config.xml),获得ActionMapping,配置应用程序 1.ActionServlet接收用户请求 2.ActionServlet根据应用程序配置填充ActionForm 3.ActionServlet根据ActionMapping调用Action的execute方法 4.Action调用业务逻辑类(Model),在简单的程序中也可以在Action 的execute方法中执行业务处理 5.业务逻辑类将处理结果返回给Action,Action将处理结果保存在适 当的作用域范围之内(session、request等) 6.Action的execute方法向ActionServlet返回ActionForward指明下一 步调用的Action或JSP视图 7.JSP视图取得保存在作用域之中的业务处理结果并负责显示HTML 页面 大家最好用自己的话来总结出来! 2.常用的集合以及介绍:(应重点复习) 常用集合set、map、list set、map是collection接口的子接口 set接口的实现类:HashSet、TreeSet List接口的实现类:ArrayList、linkedList Map接口的实现类:HashMap、TreeMap、Hashtable。 ArrayList和linkedList的区别(略) HashMap、HashTable区别(略) 3.遍历map的方法: 使用Map接口提供的方法entrySet(); import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class MapTest { public static void main(String[] args) { Map map = new HashMap(); map.put("a", "中国"); map.put("b", "ABC"); map.put("c", 1000); /*for(Iterator> it = map.entrySet().iterator();it.hasNext();){ Entry entry = it.next(); System.out.println(entry); System.out.println(entry.getKey());

java模拟试卷3与答案

复习题 3 一、选择题 1. JDK 提供的编译器是(B)。 (A ) java.exe(B ) javac.exe (C) javap.exe( D) javaw.exe 2.以下作为 Java 程序入口的 main 方法声明正确的( C)。 (A ) public void main(String args[]) (B ) public int main(String args[]) (C) public static void main(String args[]) (D ) public static int main(String args[]) 3.以下标识符错误的是( C )。 (A )Public( B)张三( C) class(D ) main 4.java 中定义字符串 String s= ”pzhu”,下面操作可以取得字符串长度的是( A )。 (A ) s.length()( B) s.length( C)s.size()( D) length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A ) a[3]=100(B ) a[0].length( C)a++( D) a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A ) a[0][1]=200( B) a[0].length( C) a[1][1]=100( D) a.length 7. 以下数据类型存储空间最大的是(B)。 (A ) byte( B) long(C) float(D ) char 8. 面向对象的三大特性,不包括如下( A)。 (A )异常( B)封装(C)继承(D )多态 9、关于类的定义以下说法错误(B)。 (A )类定义使用class 关键字( B)每个类中必须有一个main 方法 (C)一个包可以包含多个类( D) java 中所有类都是Object 类的子类 10. 关于构造方法以下说法错误的是(D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new 来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A) Java 是单继承的(B)通过extends 来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是 is a 的关系 12.以下代码执行的结果是 ( C )。 System.out.println(" 攀枝花学院 pzhu".length()); (A)编译错误(B)运行错误(C) 9(D) 14 13. 用来存储键值对的容器是 ()。 (A )ArrayList( B ) LinkedList(C) HashSet( D) HashMap 14、 java 中用来抛出异常的关键字是( C )。 (A) try(B) catch(C) throw(D) throws 15.关于 finally块中的代码,以下说法不正确的是(A)。 (A ) try 块中的 return 语句会中断finally 块中语句的执行 (B )无论 finally 块前的语句运行是否产生异常,其中的语句都会执行 (C) finally 块中的语句通常中用作资源的清理 - 1 -

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() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案: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的值是()

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

软通面试

天去软通动力面试,凭着印象大概把题记了一下: 1.静态变量的作用。const,V olatile,synchrnize什么情况下使用?如何声明一个常量。 静态变量甚至在没有创建对象时也能访问 静态变量的本意是为了让所有的对象共享这个变量静态变量只能写在类中而不能写在方法中,因为静态变量也称为类变量,是整个类的所有实例对象都能引用的,而且仅在第一次生成这个类的对象时为这个静态变量分配空间,故这个静态变量对于该类的所有实例对象是公用的。 被const修饰的东西都受到强制保护,作用和final差不错不过貌似只作为java中的保留字吧和goto一样 在关键字前加上volatile目的是让此变量的操作保证为原子操作,在JA V A中char,int,boolean 这些的引用和赋值都是原子的,不可分割的.但是long和double却不是原子的.一个int类型的字段n,某个线程对其进行操作:n=123;而前后有另一个线程也进行n=456的操作,那么结果可能是123或者是456,不可能出现134之类的.但是long和double就不一样,如果是n=123L 和n=456L做同样的操作, 结果可能会出现156234L的情况等. public static final int aaa = 1; private static final String bbb = "Hello world!"; 2.用于线程实现的类和接口分别是什么?简单举出使用范例。 3.java.io.reader和java.io.inputstream的区别。 Java.io.Reader 和java.io.InputStream 组成了Java 输入类。 Reader 用于读入16位字符,也就是Unicode 编码的字符;而InputStream 用于读入ASCII 字符和二进制数据 4.设计一个servlet读取客户端上载的文件,继承自那个类?支持post/get操作要实现哪些方法?简述如何读取 上载文件。 读取文件用FileInputStream(File f)或者getServletContext().getRealPath("WEB-INF/tst.txt")? 输出的时候可以用ByteArrayOuputStream的writeTo(ServletOutputStream)

JAVA模拟试题(含答案)

一、请分别写出下面程序的运行结果,将答案添在每道题后的空格处 1. public class Test1 { public static void main(String[] args) { int x=10,y=20; System.out.print("x="+(x++)+" y="+(++y)+" sum="+(x+y)); } } 运行结果:x=10 y=21 sum=32 2. public class Test2 { public static void main(String[] args) { boolean end; for(int i=2;i<20;i++){ end=true; for(int j=2;j<=i;j++){ if(i%j==0&&j

java模拟试卷3及答案学习资料

复习题3 一、选择题 1.JDK提供的编译器是(B)。 (A)java.exe (B)javac.exe (C)javap.exe (D)javaw.exe 2.以下作为Java程序入口的main 方法声明正确的(C)。 (A)public void main(String args[]) (B)public int main(String args[]) (C)public static void main(String args[]) (D)public static int main(String args[]) 3.以下标识符错误的是(C)。 (A)Public (B)张三(C)class (D)main 4.java中定义字符串String s=”pzhu”,下面操作可以取得字符串长度的是(A)。(A)s.length() (B)s.length (C)s.size() (D)length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A)a[3]=100 (B)a[0].length (C)a++ (D)a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A)a[0][1]=200 (B)a[0].length (C)a[1][1]=100 (D)a.length 7. 以下数据类型存储空间最大的是( B )。 (A)byte (B)long(C)float (D)char 8. 面向对象的三大特性,不包括如下( A)。 (A)异常(B)封装(C)继承(D)多态 9、关于类的定义以下说法错误(B)。 (A)类定义使用class关键字(B)每个类中必须有一个main方法 (C)一个包可以包含多个类(D)java中所有类都是Object类的子类 10. 关于构造方法以下说法错误的是( D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A)Java是单继承的(B)通过extends来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是is a的关系 12. 以下代码执行的结果是( C)。 System.out.println("攀枝花学院pzhu".length()); (A)编译错误(B)运行错误(C)9 (D)14 13. 用来存储键值对的容器是( )。 (A)ArrayList (B)LinkedList (C)HashSet (D)HashMap 14、java中用来抛出异常的关键字是(C)。 (A)try (B)catch (C)throw (D)throws 15.关于finally块中的代码,以下说法不正确的是(A)。

java笔试题含答案

班级:_______________ 学号:______________ 姓名:___________ Java 笔试题 (可多选) 1. 下面哪些是Thread类的方法( ABD) A start() B run() C exit() D getPriority() 2. 下面关于类的说法正确的是(A) A 继承自Throwable B Serialable C 该类实现了Throwable 接口 D 该类是一个公共类 3. 下面程序的运行结果是( false ) String str1 = "hello"; String str2 = "he" + new String("llo"); == str2); 4. 下列说法正确的有( C) A. class中的constructor不可省略

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

软通动力软件测试笔试题

A)证明软件错误不存在 B)证明软件错误的存在 C)改正程序所有的错误 D)发现程序所有的错误 2.对于软件质量描述不正确的是:() A)高质量的过程产生高质量的产品 B)软件质量是测试人员测试出来的 C)软件质量是设计和规划出来的 D)项目阶段结束意味着产品质量达到了预期的标准 3.对于软件测试描述不正确的是:() A)软件测试无法找到程序当中的所有缺陷 B)测试工程师需要在最短时间内完成最有效的测试 C)软件测试工程师只要了解需求就可以了 D)测试工程师也需要了解编码知识 4.测试工程师需要了解下面哪些知识:() A)项目管理知识 B)测试知识 C)需求管理 D)以上都包括 5.检查软件产品是否符合需求定义的过程称为:() A)确认测试 B)集成测试 C)性能测试 D)功能测试 6.评审是对软件进行表态测试的一种方法,下述结论中。哪个是与软件评审无关的内容:() A)尽量发现错误

B)检查软件文档 C)根据评审标准 D)依靠测试信息 7.路径测试是整个结构测试的重要组成,但在研究路径测试时,通常又是使用程序控制流图来代替() A)程序框图 B)结构图 C)数据流图 D)程序流程图 8.软件测试类型按开发阶段划分是() A)需求测试、单元测试、集成测试、验证测试 B)单元测试、集成测试、确认测试、系统测试、验收测试 C)单元测试、集成测试、验收测试、确认测试、验收测试 D)调试、单元测试、集成测试、用户测试 9.下述说法错误的是() A)单元测试又称为模块测试,是针对软件测试的最小单位—程序模块进行正确性检验的测试工作 B)集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、弟增的测试。 C)集成测试是检验程序单元和部件的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。 D)系统测试是真实或模拟系统运行环境下,检查完整的程序系统能否和相关硬件、外设、网络、系统软件和支持平台等正确配置与连接,并满足用户需求 10.下列关于alpha测试的描述: (1)alpha测试需要用户代表参加 (2)alpha测试不需要用户代表参加 (3)alpha测试是系统测试的一种

蓝桥杯java模拟试题

本试卷包含两种题型:“代码填空”与“程序设计”。 填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。所填写的代码不多于一条语句(即不能出现分号)。 编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。选手的程序必须是通用的,不能只对试卷中给定的数据有效。1.代码填空(满分3分) 以下程序打印出0~9的数字,请补充缺少的代码。 public class MyTest { public static void f(int begin, int end) { __________________; System.out.println(begin); f(begin+1, end); } public static void main(String[] args) { f(0,9); } } if(begin>end) return;//相当于退出循环的条件。return 无返回值根据void 2.代码填空(满分4分) 如果要把两个整型变量a、b的值交换,一般要采用一个中间变量做过渡,但也可以在不借助任何其它变量的情况下完成。试填写缺失的代码。 a = a ^ b; b = _________; a = _________; a^b a^b 3.代码填空(满分3分) 许多人都曾经玩过“拍七”游戏。规则是:大家依次从1开始顺序数数,数到含有7或7的倍数的要拍手或其它规定的方式表示越过(比如:7,14,17,71等都不能数出),下一人继续数下面的数字。违反规则者受罚。下面的程序模拟这个过程,拍7的情况输出“*”,请完善之。 for(int i=1; i<100; i++) { if(i % 7 == 0) System.out.println("*"); else if(___________________) System.out.println("*"); else System.out.println(i); } (i-7)%10==0||i/10==7 // i/10==7||i%10==7 4.代码填空(满分5分)

JAVA试题及答案(精致)

选择题 1、JAVA所定义的版本中不包括:( D ) A、JAVA2 EE B、JAVA2 Card C、JAVA2 ME D、J AVA2 HE E、J AVA2 SE 2、下列说法正确的是( A ) A、JAVA程序的main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、J AVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括 起来 3、变量命名规范说法正确的是( B ) A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头; C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字; 4、下列javaDoc注释正确的是( C ) A、/*我爱北京天安门*/ B、//我爱北京天安门*/ C、/**我爱北京天安门*/ D、/*我爱北京天安门**/ 5、为一个boolean类型变量赋值时,可以使用( B )方式 A、boolean = 1; B、boolean a = (9 >= 10); C、boolean a="真"; D、b oolean a = = false; 6、以下( C )不是合法的标识符 A、STRING B、x3x; C、void D、d e$f 7、表达式(11+3*8)/4%3的值是( D )

A、31 B、0 C、1 D、2 8、( A )表达式不可以作为循环条件 A、i++; B、i>5; C、bEqual = str.equals("q"); D、c ount = = i; 9、运算符优先级别排序正确的是(A ) A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、 赋值运算符; B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、 逻辑运算符; C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、 赋值运算符; D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、 逻辑运算符; 10、以下程序的运行结果是:( B ) public class Increment{ public static void main(String args[]) { int a; a = 6; System.out.print(a); System.out.print(a++); System.out.print(a); } } A.666 B.667 C.677 D.676 11、下列值不为true的表达式有( C )。 A、"john" = = "john" B、"john".equals("john") C、"john" = "john" D、"john".equals(new String("john")) 12、下列输出结果是( C )

java模拟试卷及答案及解析4

复习题4 一、选择题 1.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送( D ) A、调用语句 B、命令 C、口令 D、消息 2.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点:( B ) A、安全性 B、多线程 C、跨平台 D、可移值 3.编写和运行Java applet程序与编写和运行Java application程序不同的步骤是:( B ) A、编写源代码 B、编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹 C、编译过程 D、解释执行

4.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。( B ) A、8 B、16 C、32 D、64 5.关于下列程序段的输出结果,说法正确的是:( D ) public class MyClass{ static int i; public static void main(String argv[]){ System.out.println(i); } } A、有错误,变量i没有初始化。 B、null C、1 D、0 6.下列代码的执行结果是:( B ) public class Test3{ public static void main(String args[]){ System.out.print(100%3);

. System.out.print(","); System.out.println(100%3.0); } } A、1,1 B、1,

C、1.0,1 D、1.0,1.0 7.下列程序段的输出结果是:( B ) void complicatedexpression_r(){ int x=20, y=30; boolean b; b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60; System.out.println(b); } A、true B、false C、1 D、0 8.给出下列代码片段:( D ) if(x>0){System.out.println("first");} else if(x>-3){ System.out.println("second");} else {System.out.println("third");} 请问x处于什么范围时将打印字符串“second”? A、x>0 B、x>

java基础测试题及答案

一、选择题(每题2分,共40分) 1、下面哪个是Java语言中正确的标识符(C) A、3com B、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的:(B) A.intx[]={1,2,3};B.intx[3]={1,2,3}; C.int[]x={1,2,3};D.intx[]=newint[]{1,2,3}; 3、下述概念中不属于面向对象方法的是(D)。 A.对象、消息??B.继承、多态??? C.类、封装????D.过程调用 4、下面的代码段中,执行之后i和j的值是什么?(B) inti=1; intj; j=i++*2+3*--i; A.1,2B.1,5C.2,1D.2,2 5、下面哪条语句把方法声明为抽象的公共方法?(B) A.publicabstractmethod(); B.publicabstractvoidmethod(); C.publicabstractvoidmethod(){} D.publicvoidmethod()extendsabstract; 6、下面关于java中类的说法哪个是不正确的?(C) A.类体中只能有变量定义和成员方法的定义,不能有其他语句。 B.构造函数是类中的特殊方法。 C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?(C)classA { inti; staticStrings; voidmethod1(){}

staticvoidmethod2(){} } A、; B、a.method1(); C、A.method1(); D、A.method2() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改 变?(B) A、CardLayout B、FlowLayout C、BorderLayout D、GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的?(C) A.滑块 B.进度条 C.按钮 D.标签 10、在Java中如果要在字符串类型对象s=“JAVA”,中找出‘V’出现的位置可使用下面哪个方法: (B) A.mid(2,s);B.charAt(2);C.s.indexOf(‘V’);D.indexOf(s,’V’); 11、Java中哪个类提供了随机访问文件的功能。(A) A.RandomAccessFile类 B.RandomFile类 C.File类 D.AccessFile类 12、下面哪个方法是类的成员方法,用来获取Socket的输入流。(C) A.getChannel()B.getConnetion() C.getInputStream()D.getStream() 13、给出下面代码: publicclassPerson{ staticintarr[]=newint[10]; publicstaticvoidmain(Stringa[]) { } } 哪个语句是正确的?(B) A.编译时将产生错误; B.输出零; C.编译时正确,运行时将产生错误; D.输出空。 14、A派生出子类B?,B派生出子类C,并且在Java源代码中有如下声明: 1)?Aa0=newA(); 2)?A?a1=newB(); 3)???Aa2=newC();

相关文档
最新文档