JAVA模拟试题(含答案)
- 格式:doc
- 大小:52.00 KB
- 文档页数:4
java模拟试题(带答案)判断题1.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。
(√)2.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。
(某)3.所谓抽象类就是包含有抽象方法的类。
(某)4.Java系统的标准输入对象是Sytem.in,标准输出对象有两个,分别是标准输出Sytem.out和标准错误输出Sytem.err。
(√)5.如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。
(某)6.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。
(√)7.用“+”可以实现字符串的拼接,用-可以从一个字符串中去除一个字符子串。
(某)8.一个容器中可以混合使用多种布局策略。
(某)9.Java中,并非每个事件类都只对应一个事件。
(√)10.Java的源代码中定义几个类,编译结果就生成几个以.cla为后缀的字节码文件。
(√)11.JavaApplet是由独立的解释器程序来运行的。
(某)12.Java的字符类型采用的是ASCII编码。
(某)13.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。
(√)14.Sytem类不能实例化,即不能创建Sytem类的对象。
(某)15.用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。
(√)填空题1java源程序编译命令是javac2java应用程序中有一个main()方法,它前面有三个修饰符是public,tatic,void3java语言数据类型可分为两大类,一类称为基本数据类型,另一类称为引用数据类型4在转向语句中,continue语句使得程序结束本次循环,回到循环的条件测试部分继续执行。
5设某为float型变量,y为double型变量,a为int型变量,已知某=2.5f,a=7,y=4.22则表达式某+a%3某(int)某%(int)y的值为4.5 6设某为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型,则表达式某+y某a/某+b/y+c的值为double 类型7设有数组定义:intMyIntArray[]={10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是120int=0;for(inti=0;i<MyIntArray.length;i++)if(i%2==1)+=MyIntArray[i] ;Sytem.out.println()选择题1.在浏览器中执行applet程序,以下选项中的哪个方法将被最后执行(C)。
2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1."对下面的语句序列正确的说法是:int c=’A’/3;c+=’1’%5;System.out.println(c);A. 输出结果:25B. 运行时错误C. 产生编译错误D. 输出结果2答案:A2."定义字符串:String s1=”hello”:对下面程序描述正确的是:If(s1==”hello”) {System.out.println(“s1=\”hello\””);} else {Syst em.out.println(“s1 != hello”);}A. 输出 s1!=helloB. 输出 s1=”helloC. 产生编译错误D. 编译正确运行错误答案:B3.软件设计阶段的输出主要是:A. 伪代码B. 程序C. 模块D. 设计规格说明书答案:D4.不同级别的用户对同一对象拥有不同的访问权限或某个客户端不能直接操作到某个对象,但又必须和那个对象有所互动,这种情况最好使用什么模式?A. Fasade模式B. Bridge模式C. Adapter模式D. Proxy模式答案:D5.栈和队列的共同特点是:A. 都是先进后出B. 只允许在端点处插入和删除元素C. 都是先进先出D. 没有共同点答案:B6.Oracle中数值1234567.89如果放入Number(9,3)类型的变量中,存储的值是:A. 1234567.890B. 1234567.9C. 1234567.89D. 会报Numberic error答案:7.PL/SQL中用来判断FETCH语句是否成功,并且在FETCH语句失败时返回逻辑真的属性是:A. %NOTFOUNDB. %FOUNDC. %ISOPEND. %ROWCOUNT答案:A8."Given the following fragment of code;Double d1=newDouble(1.0);Double d2=newDouble(1.0);Float f=new Float(1.0F);Which results of the following expressions are true?A. d1==d2B. d1.equals(d2)C. d1=fD. f.equals(d1)答案:B9.已知二叉树后序遍历序列是dabec,中序遍历序列是debac,他的前序遍历序列是:A. decabB. deabcC. acbedD. cedba答案:10.在oracle中,语句select ‘test’ || null from dual;的查询结果为:A. 结果是testB. 结果是testnullC. 结果是空D. 结果是NULL答案:A11.如果从流中读取一个大数据量的XML文件并进行解析,最好使用哪种解析器?A. 两种都不可以B. 两种都可以,没有太大区别C. SAXParserD. DOMParser答案:C12.如果你设计了一个类,并且覆盖率equals()方法,哪些方法你还会考虑覆盖?A. clone()B. toString()C. wait()D. finalize()E. hashCode()答案:E13."假设test类运行于多线程环境下,那么关于A处的同步下面描述正确的是?public class Test {List list = new java.util.ArrayList();public void test() {synchronized(list) { // --Alist.add( String.valueOf(System.currentTimeMillis()));}}}A. Test 类为singleton时也没有必要增加synchronizedB. Test方法中必须增加synchronizedC. Test类为singleton时有必要增加synchronizedD. Test 方法中没有必要增加synchronized答案:C14.关于final下面哪些是错误的?A. final可以用来声明抽象类中的方法B. final可以用来声明接口中的方法C. 以上都不对D. final method不能被覆盖E. final class不能被继承答案:B15.类的实例方法表示的是什么?( )A. 类的行为B. 父类对象的行为C. 类的属性D. 类对象的行为答案:D16."类A定义如下:class A {private int x=10;int getX() {return x;}}class B extends A {private int x=15;//需要覆盖getx()方法}在”//需要覆盖getx()方法”后应加上的函数是:A. int getX(float f) {…}B. double getx(float f){…}C. float getx(){…};D. int getx(){…}答案:D17.面向对象的特征答案:(抽象、继承、多态、封装)18.在ORACLE中,关于同义词说法错误的是:A. 可以为存储过程创建同义词B. 同义词可以和表重名C. 共有同义词和私有同义词创建的权限不同D. 同义词只能由创建同义词的用户使用答案:D19.释放SessionBean使用的某些资源或者刷新Entity Bean的缓存的代码一般实现在哪个方法中?A. ejbLoadB. ejbPassivateC. ejbStoreD. ejbRemoveE. ejbActivate答案:B20.JSP内置对象有哪些" A.applicationB.requestC.reponseD.sessionE.OOXX答案:ABCD21.Which modifier should be used to define a constant member variable?A. staticB. finalC. abstractD. No modifier can be used答案:B22.下面哪一个primitive type 和对应的wrapper class 是错误的?ng.IntegerB.g ng.LongC.short ng.ShortD.void ng.V oidE.char[] ng.String答案:E23.下面哪个声明是错误?A. int i=0xFFFFFFFF;B. byte b=01;C. char c=\u0000;D. long l=1234567890LE. int i=’a’;答案:C24."转发HTTP 请求一般有两种方法,response.sendRedirect 和RequestDispatcher.forward,哪种方法可以保存request.setAttribute()中设置的值不丢BA. sendRedirectssB. forwardC. 两个都不能D. 两个都可以答案:25.下列关于Java语言的叙述中,正确的是:A. 源文件名其扩展名为.jarB. Java是不区分大小写的C. 源文件中public类的数据不限D. 源文件名必须与public类型的类名相同答案:D26."下面语句片段的输出结果是什么?()int score=9;switch(score){case 0: System.out.println();default: System.out.println(“Error”);case 1: System.out.println(“Good”); break;case 2: System.out.println(“Best”);}A. ErrorB. 没有输出C. Error,Good,BestD. Error,Good答案:D27."下面程序执行代码到第5行时j的值是:1. public class test {2. public static void main(String args[]) {3. int i = OxFFFFFFF1;4. int j = -i;5.6. }7. }A. 14B. 15C. 0D. 1答案:B28.如果你设计了一个类,并且覆盖了equals()方法,哪些方法你还会考虑覆盖?A. hashCode()B. wait()C. finalize()D. toString()E. clone()答案:A29.下面哪些赋值语句是错误的。
2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.一个正在执行的线程在遇到下列()情况下会终止执行?A. 执行stop()方法;B. 执行wait()方法;C. 执行seleep()方法;D. 其run()方法运行完后。
答案:AD2.下面哪个是合法的布尔值A. “false”B. falseC. 10答案:B3.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。
这样,从浏览器的地址栏中可以看到跳转后的链接地址。
所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。
在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用HttpServletResponse.sendRequest()方法。
4.1. 保证在java应用程序中,一个类Class只有一个实例存在该使用什么设计模式答案:单例5."MyObject哪个方法会影响到这段代码的正确性以及效率?Set set = new java.util.HashSet();set.add( new MyObject(A”));if ( set.contains( new MyObject(A”))) {……}A. hashCodeB. toStringC. cloneD. equals答案:6.对于大多数J2EE Constainer来说,web应用最终可以用哪种形式部署?A. jarB. earC. warD. 直接以目录形式答案:BCD7."给出下面的不完整的方法:1)2){ success = connect() ;3)if (success == -1){4) throw new TimeOutException();5)}6)}TimeOutException 不是一个RuntimeException,下面那行可以放在 1)处?A. public void method() throws ExceptionB. public void method()C. public void method() throws TimeOutExceptionD. public void method() throw TimeOutException答案:8.软件设计阶段的输出主要是:A. 伪代码B. 程序C. 模块D. 设计规格说明书答案:D9.下面哪些是合法的标识符?A. *point;B. _endline;C. $personC. const答案:BC10.下列关于java程序结果错误的是A. 源文件可以没有 import 语句B. Package语句必须放在源文件的第一句C. 一个源文件可以有多个类定义D. 一个源文件可以定义多个public类答案:D11.多选题:答案:12."下面语句输出的结果是什么?int score = 9;switch (score){case 0:System.out.println();default: System.out.println(""Error"");case 3: System.out.println(""Good"");break;case 2: System.out.println(""Best"");}A. Error Good BestB. Error goodC. ErrorD. 没有任何输出答案:B13."类A定义如下:class A{private int x=10;int getx(){retrun x;}}class B extends A{private int x=15;//需要覆盖getx()方法}在“//需要覆盖getx()方法”后应加上的函数是?A. int getx(float f) {…}B. int getx() {…}C. double getx(float f) {….}D. folat getx() {…}答案:B14.构造ArrayList类的一个实例,下列哪个方法是正确的?A. List myList = new ArrayList();B. ArrayList myList = new List();C. List myList = new List();D. ArrayList myList = new Object();答案:A15.下面哪些接口的声明是错误的?A. interface MyInterface extends Youninterface{}B. private interface MyInterface{}C. interface MyInterface extends Youninterface1, Youninterface2{}D. interface MyInterface implements MyInterface{}E. interface MyInterface{}答案:C16.Java程序运行入口的main方法的返回值类型是什么?A. booleanB. staticC. intD. void答案:D17.下面哪个Map是排序的?A. HashtableB. TreeMapC. HashMapD. WeakHashMapE. LinkedHashMap答案:E18.在java中判断applet的来源的方法有?A. getCodeBase();B. getDocumentBase();C. getCodebase();D. getDocumentbase();答案:AB19.下面的异常处理说明正确的是( )A. try块只能使用一个catch子句。
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中的接口是一种完全抽象的类,它不包含任何实现代码,只包含常量和抽象方法的声明。
复习题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、8B、16C、32D、645.关于下列程序段的输出结果,说法正确的是:( D )public class MyClass{static int i;public static void main(String argv[]){System.out.println(i);}}A、有错误,变量i没有初始化。
B、nullC、1D、06.下列代码的执行结果是:( B )public class Test3{public static void main(String args[]){System.out.print(100%3);System.out.print(",");System.out.println(100%3.0);}}B、1,1.0C、1.0,1D、1.0,1.07.下列程序段的输出结果是:( 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、trueB、falseC、1D、08.给出下列代码片段:( 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>0B、x>-3C、x<=-3D、x<=0 & x>-39.若要把变量声名为暂时性变量,应使用如下哪种修饰符?( C )A、protectedB、provateC、transientD、volatile10.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为:( C )A、隐藏B、覆盖C、重载D、Java不支持此特性11.如要抛出异常,应用下列哪种子句?( B )A、catchB、throwC、tryD、finally12.在使用interface声明一个接口时,只可以使用____修饰符修饰该接口。
Java试题(附答案)⼀、单选题(每道⼩题只有⼀个正确的选项)1、Java程序中要⽤变量来存储学⽣性别信息,从节约内存空间的⾓度最好选择哪种数据类型( D )A)int B)short C)byte D)boolean2、Java语⾔中基本的数据类型不包括( C ):A)整型B)浮点型C)数组D)逻辑型3、Java程序中⽤来定义常量必须⽤到的关键字是(A)A)final B)class C)void D)static4、下列属于Java语⾔中字符常量的是( B )A)”m”B)‘!’C)a D)$5、⼀个简单的Java程序可能没有⽤到的关键字是(C )A)void B)public C)int D)static6、下列关于Java程序中数组的使⽤说法正确的是(A)A)数组必须在使⽤前定义B)同⼀个数组中的元素类型必须不同C)数组是⼀种特殊的变量不需在使⽤前声明D)数组的元素不可以是数组7、程序设计语⾔的发展主要经历了三个阶段,其中不包括(A)A)数学语⾔B)机器语⾔C)汇编语⾔D)⾼级语⾔8、关于程序设计语⾔下列说法错误的是( C )A)Java、C++、VB等都是当前⼴泛使⽤的⾼级程序设计语⾔。
B)⼀项任务可以使⽤多种语⾔来实现,使⽤前需要综合考虑选择合适的语⾔。
C)因特⽹的应⽤开发必须使⽤Java语⾔来实现。
D)Java是⼀种完全⾯向对象的⾼级语⾔,在因特⽹的应⽤开发中⼴泛应⽤。
9、经过编译后的Java程序的扩展名是( B )A).java B).class C).exe D).bat10、关于Java源程序的说法错误的是( C )A)⽂件名必须和主类名⼀致B)使⽤“javac”对java程序进⾏编译C)java程序的编译运⾏须借助辅助软件D)java源程序的扩展名为.java11、若已定义x和y是double型变量,则表达式x=1,y=x+3/2执⾏后y的值为( D )A)1 B)2 C)3 D)2.512、Java语⾔中整型常量有三种形式即⼋进制整数、⼗进制整数和⼗六进制整数。
选择看前40,填空看前30第一部分模拟试题第一题单项选择题1、Java语言和c++语言相比,哪一项是Java有的,而c++没有?(D )A、面向对象B、动态链接C、有类库D、跨平台2、下列选项中,不属于Java语言特点的一项是( C )。
A、分布式B、安全性C、编译执行D、面向对象3、在下列选项中,属于Java语言的代码安全检测机制的一项是( B )。
A、动态链接B、访问权限的检查C、通过接口实现多重继承D、将所有的Java应用都看做对象,按类进行封装4、下列选项中,不属于Java语言安全机制的一项足( D )。
A、语法检查B、不允许使用指针C、代码参数类型合法性检查D、对内存进行跟踪5、下面关于Java代码安全的说法哪一项是不正确的( B )?A、Java程序在解释执行时所需要的类都是通过字节码校验程序装入的B、Java字节码的执行是由JVM中的编译器完成的C、在Java程序运行时,首先装入字节码,然后进行校验,最后在解释器中执行D、在默认的安全配置条件下,Applet不能访问任何本地资源6、下列API不属于java .1ang.Math类的一个是(C )。
A、random() (随机数)B、abs()C、drawLine()D、sin()7、阅读下列代码段,选出该代码段的正确的文件名( D )。
class A{void methodl(){System.out.println(”methodl in class A”):}}public class Bvoid method2(){System.out.println(”method2 in class B”):}public static void main(String args[]){System.out.println(”main()in class B”):}}A、A .javaB、A.classC、B.classD、B.java8、编译下面源程序会得到哪些文件?(C )class AI{}elass A2{}Public class B{Public static void main(String args[ ]){}}A、只有B.class文件B、只有A1.Class和A2.class文件C、有A1.class、A2.Class和B.class文件D、编泽不成功9、定义类头时能使用的修饰符是( D )。
第1篇一、Java基础知识1. 请简述Java语言的特点。
2. 什么是Java虚拟机(JVM)?它有什么作用?3. 什么是Java的内存模型?请解释Java内存模型中的几个关键概念:堆、栈、方法区、程序计数器、本地方法栈。
4. 什么是Java中的反射机制?请举例说明反射在Java中的应用。
5. 什么是Java中的泛型?请解释泛型的原理和作用。
6. 请简述Java中的四种访问控制符:public、protected、default、private。
7. 什么是Java中的继承和多态?请举例说明继承和多态在实际开发中的应用。
8. 什么是Java中的封装?请举例说明封装在实际开发中的应用。
9. 什么是Java中的接口和抽象类?它们之间有什么区别?10. 什么是Java中的异常处理?请解释try-catch-finally语句的执行顺序。
二、Java集合框架1. 请列举Java集合框架中的常用集合类及其特点。
2. 请简述ArrayList、LinkedList、HashMap、HashSet的区别。
3. 什么是Java中的泛型集合?请举例说明泛型集合的应用。
4. 什么是Java中的迭代器(Iterator)和枚举器(Enum)?请比较它们的区别。
5. 什么是Java中的List、Set、Map的遍历方法?6. 请解释Java中的ArrayList和LinkedList的内部实现原理。
7. 什么是Java中的HashMap的扩容机制?8. 什么是Java中的HashSet的内部实现原理?9. 请解释Java中的线程安全集合类,如CopyOnWriteArrayList、ConcurrentHashMap。
三、Java多线程与并发1. 什么是Java中的线程?请解释线程的创建、调度和同步。
2. 请简述Java中的线程状态,如新建、就绪、运行、阻塞、等待、超时等待、终止。
3. 什么是Java中的同步机制?请解释synchronized关键字的作用。
java模拟试题及答案Java模拟试题及答案一、选择题(每题2分,共20分)1. 下列哪个关键字是Java中用于定义类的方法的?A. classB. publicC. staticD. void答案: B2. Java中的哪个类是所有Java类的根类?A. ObjectB. StringC. SystemD. Main答案: A3. 在Java中,以下哪个是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) {D. if (x > y)答案: A4. Java中的哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. package答案: B5. 下列哪个不是Java的访问修饰符?A. publicB. privateC. protectedD. global答案: D6. Java中,哪个关键字用于实现多态?A. extendsB. implementsC. newD. abstract答案: A7. 在Java中,哪个关键字用于定义一个类为抽象类?A. abstractB. finalC. staticD. void答案: A8. Java中,哪个关键字用于定义一个类为最终类,不能被继承?A. abstractB. finalC. staticD. strictfp答案: B9. 下列哪个是Java中的集合框架?A. AWTB. SwingC. JDBCD. Collections答案: D10. Java中,哪个关键字用于实现异常处理?A. tryB. catchC. finallyD. All of the above答案: D二、简答题(每题5分,共20分)1. 简述Java的垃圾回收机制。
答案: Java的垃圾回收机制是一种自动内存管理功能,用于识别和回收不再使用的对象,从而释放内存。
2023年计算机二级JAVA考试模拟试题及答案2023年计算机二级JAVA考试模拟试题及答案1). 下面( )是合法的标识符。
A.$personsB.2UsersC.*poi ntD.this正确答案:A答案解析:此题考察Java 标识符的命名,属于考试重点内容,应该掌握。
Java 中标识符的命名规那么是:标识符以字母、下画线或美元符作为首字符的字符串序列;标识符是区分大小写的;标识符的字符数没有限制。
由此可见,Java 中标识符不能以数字开头,所以选项B错误;不能以“*”开头,选项C错误;this 是专用标识符,具有专门的意义和用处,选项D 错误,只有选项A 正确。
2). 设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比拟的次数分别是s和b,在查找不成功情况下s和b 的关系是( )。
A.s =bB.s》bC.sD.s》=b正确答案:B答案解析:顺序查找的根本思想是:从表的一端开场,顺序扫描线性表,依次将扫描到结点的关键字和给定值k进展比拟,假设当前扫描到结点的关键字与k相等,那么查找成功;假设扫描完毕后,仍未找到关键字等于k的结点,那么查找失败。
二分查找法是一种效率较高的查找方法,要求线性表是有序表。
根本思想是:首先将待查的k值和有序表R[O]~R[n -1]的中间位置mid上的结点的关键字进展比拟,假设相等,那么查找完成;否那么,假设R[mi d]. key》k,那么说明待查找的结点只可能在左子表R[O]~R[mi d -1]中,我们只需在左子表中继续进展折半查找,假设R[mi d]. key3). 定义一个表示10个值为null的字符串数组,下面选项正确的选项是( )。
A.String []a;B.String a[];C.char a[10][];D.String a[]=new String[10];正确答案:D答案解析:此题考察字符串数组变量的声明。
一、请分别写出下面程序的运行结果,将答案添在每道题后的空格处
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<i){
end=false;
break;
}
}
if(end)
System.out.print(i+" ");
}
}
}
运行结果:2 3 5 7 11 13 17 19
3.
public class Test3 extends B{
public static void main(String[] args) {
int a=12,b=12;
int x=compute(a,b);
int y=subtract(a,b);
System.out.println("x="+x+" y="+y);
}
static public int compute(int a, int b){
return a*b;
}
}
class B{
static public int compute(int a,int b){
return a+b;
}
static public int subtract(int a, int b){
return a-b;
}
}
运行结果:x=24 y=0
4.
public class Test1 {
public static void main(String[] args){
String s="Java是一门很优秀的编程语言。
Java可以用来开发大型应用程序。
Java 具备了一次写成处处运行的特点";
int k=0,num=0;
while(true){
k=s.indexOf("Java",k);
if(k>=0){
num++;k++;
}
else break;
}
System.out.println(num);
}
}
运行结果:3
二、试写一个public方法max,它的输入参数是一个int型数组。
max方法可以找出参数数组中的最大值。
并将最大值返回。
(请将方法写完整,包括方法声明和方法体)
public static int GetMax(int[] a)
{
int temp=0;
for(int i=0;i<a.length;i++)
{
if(a[i]>temp)
{
temp=a[i];
}
}
return temp;
}
三、请写一个完整的Java程序,用文件读入输出方法将d盘下的test.txt文件复制到e盘下。
import java.io.*;
public class t1 {
public static void main(String[] args) throws IOException{
int a;
FileInputStream fis = null;
FileOutputStream fos = null;
try {
fis = new FileInputStream("d:\\test.txt");
fos = new FileOutputStream("e:\\test.txt");
while((a=fis.read())!=-1)
{
try {
fos.write(a);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println("复制完成");
} catch (Exception e) {
e.printStackTrace();
}
finally{
fos.close();
fis.close();
}
}
}
四、请写一个GUI应用程序,如下图所示。
当点击图中Time按钮,文本框中将显示当前时间。
五、一个多线程应用程序中,有一个类Var
class Var{
static boolean has;
static String code;
static boolean stop;
}
Var类中,成员变量code存储字符串,成员变量has为true表示code中新添加了字符串,为false表示code中的字符串已被读过。
成员变量stop为true表示通知线程停止运行。
一个主线程MainThread功能如下:当Var.has为true,则打印Var.code中的字符串,然后将Var.has置为false。
一共打印10个字符串。
MainThread的代码如下:
public class MainThread {
public static void main(String[] args) {
CheckCode cc=new CheckCode();
cc.start();
int num=0;
while(num<10){
if(Var.has){
System.out.println(Var.code);
Var.has=false;
num++;
}
}
Var.stop=true;
}
}
另有个线程CheckCode功能如下:线程循环运行,当检测到Var.has为false时,随机产生一个长度为4个英文字母的字符串,如“kiab”,放到Var.code,同时将Var.has置为true。
当检测到Var.stop为true时,则结束线程。
请完整写出线程CheckCode的代码。
CheckCode.java
public class CheckCode implements Runnable {
@Override
public void run() {
while (!Var.stop) {
if (!Var.has) {
Var.code = new RandStr().getStr();
Var.has = true;
try {
Thread.currentThread().sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}。