Logic Java内部测试机试题
Java软件工程师企业测评测试题
Java软件工程师企业测评测试题一、选择题:(每题2分)1.名为HelloWorld.java的Java应用程序如下:(B)将这个程序放在C:\Test下,然后在命令行窗口中,进入到C:\Test路径执行如下指令:javac helloworld.java将得到什么结果?A.编译出错。
B.编译成功,生成名为HelloWorld.class的文件。
C.编译成功,生成名为helloworld.class的文件。
D.找不到名为helloworld.java的文件。
2.下面的程序名为Student.java:B使用如下指令编译:javac Student.java。
将会得到什么结果?A.将会顺利通过编译,并将产生一个Student.class的类文件。
B.编译时在//3处出错。
C.编译时在//2处出错。
D.编译时在//1处出错。
3.关于下面的类描述中正确的是:CA.编译出错B.编译通过,运行出错C.编译通过,运行时输出“I am an int”????D.编译通过,运行时输出“I am a string”4.关于下述程序:C描述正确的是?A.编译通过,运行时打印出5。
B.编译通过,运行时打印出23。
C.编译不通过,在//2处有错误,因为此处f必须是一个int类型的变量。
?D.编译不通过,在//1处有错误,不能这样定义变量5.关于下述程序:描述正确的是?编译通过,运行17.0/0=5.666? 17/0=5A.编译出错B.编译通过,运行时//1、//2处均出现异常C.编译通过,运行时//1处得到一个无穷大值,//2处将出现异常D.编译通过,运行时//1处出现异常,//2处将得到一个无穷大值6.关于下述程序:D描述正确的是?A.编译出错。
B.编译通过,执行的时候在//2处报错。
C.编译通过,执行时在//3处打印出3.234,在//4处打印出3.234。
D.编译通过,执行时在//3处打印出1.2342.0,在//4处打印出3.234。
Java内部测试题
题目(每题20分,附加题20分,满分100+20)一、用多重if语句实现:如果我的存款超过500万,我就买凯迪拉克;否则,如果我的存款超过100万,我就买帕萨特;否则,如果我的存款超过50万,我就买依兰特,否则,如果我的存款超过10万,我就买奥拓;否则,我只有买捷安特了。
二、编写学生类,输出学生相关信息,并编写main方法测试。
属性:姓名、性别、年龄方法:显示学生信息运行效果如图所示:三、提交email地址,对email地址进行有效性检查,要求:合法的email地址应该包含“@”符号,且“@”要出现在“.”之前。
提示:使用字符串的indexOf方法。
四、用随机数自动生成10个整数(1~100)的数组,求出生成数列中的最大值和最小值。
运行效果如图所示:图1:运行效果提示:随机数产生方法:int random=(int)(Math.random()*100);不允许使用Arrays类的sort方法。
五、实现一个简单的英中天气转换器:输入表1中天气状况英文单词的第一个字母,根据输入来判断天气状况,并输出天气的中文形式。
用户可重复输入进行转换,输入n退出系统。
运行效果如图1所示。
表1:天气状况的中英文对照表提示:使用while循环结构及多重if语句实现。
附加题:编写程序,输入正整数N,判断N是否为质数。
所谓质数,就是一个正整数,除了本身和1 以外不能被其他任何数整除。
例如2,3,5,7 是质数(这4个数只能被1和本身整除);而4(可以被2整除),6(可以被2和3整除),8(可以被2和4整除),9(可以被3整除)则不是。
图1:运行效果1图2:运行效果2提示:1.使用for循环和取余运算符(%)来检测质数。
java面试题库java面试题目及答案(3篇)
第1篇一、基础知识1. Java简介题目:请简述Java的基本特点。
答案:- 简单易学:Java设计之初就考虑了易学性,使用面向对象编程。
- 原生跨平台:Java通过JVM(Java虚拟机)实现跨平台运行。
- 安全性:Java提供了强大的安全机制,如沙箱安全模型。
- 体系结构中立:Java不依赖于特定的硬件或操作系统。
- 高效:Java的运行速度接近C/C++。
- 多线程:Java内置多线程支持,便于实现并发处理。
- 动态性:Java在运行时可以进行扩展和修改。
2. Java虚拟机题目:请解释Java虚拟机(JVM)的作用。
答案:JVM是Java程序的运行环境,其主要作用包括:- 将Java字节码转换为本地机器码。
- 管理内存,包括堆、栈、方法区等。
- 提供垃圾回收机制。
- 管理线程和同步。
3. Java内存模型题目:请简述Java内存模型的组成。
答案:Java内存模型主要由以下部分组成:- 堆(Heap):存储对象实例和数组。
- 栈(Stack):存储局部变量和方法调用。
- 方法区(Method Area):存储类信息、常量、静态变量等。
- 本地方法栈(Native Method Stack):存储本地方法调用的相关数据。
- 程序计数器(Program Counter Register):存储线程的当前指令地址。
4. Java关键字题目:请列举并解释Java中的几个关键字。
答案:- `public`:表示访问权限为公开。
- `private`:表示访问权限为私有。
- `protected`:表示访问权限为受保护。
- `static`:表示属于类本身,而非对象实例。
- `final`:表示常量或方法不能被修改。
- `synchronized`:表示线程同步。
- `transient`:表示数据在序列化时不会被持久化。
二、面向对象编程5. 类和对象题目:请解释类和对象之间的关系。
答案:类是对象的模板,对象是类的实例。
java模拟面试题目(3篇)
第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测试50道题
java测试50道题1. 已有代码Person p=new Person(); 使用语句Person sp=p;相当于生成了一个与p相同的新对象sp。
判断该语句的对错。
a) 对b) 错2. Java中,既可以用数组放简单类型数据,也可以放类类型的对象。
a) 对b) 错3. 在Java中,整型数据的大小是不固定的,某些编译器使用2字节,也有使用4字节的。
a) 对b) 错4. 在同一类中,可以有以下两个方法声明:void add(int j,int k){…} 和int add(int j,int k){…}a) 对b) 错5. 新对象的创建总是和引用该对象的变量声明在一起完成。
a) 对b) 错6. Java中的每个类都至少有一个构造器。
a) 对b) 错7. 静态方法可作用于静态变量和成员变量。
a) 对b) 错8. 下面哪句是正确的(一项)a) char ch=”s”;b) float num=5.5;c) double price=100;d) byte=1000;9. 有以下代码(一项):public class Person{static int arr[]=new int[10];public static void main(String a[]){System.out.println(arr[1]);}a) 编译时出错。
b) 编译时没错,运行时出错。
c) 输出0。
d) 输出为空。
10. 有如下代码(一项):public class Test{public static void main(String args []){int age;age=age+1;System.out.println(“The age is”+age);}}a) 编译,运行后没有输出b) 编译,运行后输出:The age is 1c) 能通过编译,但运行时产生错误d) 不能通过编译11. 在Java语言中,下列语句中正确的是(两项)。
java机试题及答案
java机试题及答案# Java机试题及答案一、选择题1. 下列哪个选项是Java语言的基本数据类型?A. StringB. IntegerC. intD. Object答案:C2. 在Java中,哪个关键字用于定义一个类?A. classB. defineC. typeD. struct答案:A3. Java中的异常处理是通过哪两个关键字实现的?A. try-catchB. if-elseC. switch-caseD. for-while答案:A二、简答题1. 简述Java的垃圾回收机制。
答案:Java的垃圾回收机制是指Java虚拟机(JVM)自动释放不再使用的对象所占用的内存。
垃圾回收器会定期检查堆内存中的对象,如果对象不再被任何引用指向,就会将其标记为垃圾,并在适当的时机进行回收。
2. 描述Java中的多态性及其应用场景。
答案:多态性是指允许不同类的对象对同一消息做出响应的能力,即同一个接口可以被不同的实例以不同的方式实现。
在Java中,多态性主要通过继承(子类重写父类方法)和接口(实现接口的类提供具体实现)来实现。
多态性使得代码更加灵活和可扩展,常用于设计模式和大型软件系统的架构中。
三、编程题1. 编写一个Java程序,实现计算一个整数数组中所有元素的总和。
```javapublic class SumArray {public static void main(String[] args) {int[] numbers = {1, 2, 3, 4, 5};int sum = sumArray(numbers);System.out.println("The sum of the array is: " + sum);}public static int sumArray(int[] array) {int sum = 0;for (int num : array) {sum += num;}return sum;}}```2. 编写一个Java程序,实现对一个字符串进行反转。
Logic Java阶段测试机试题
《使用Java理解程序逻辑》阶段测试机试题
一、语言和环境
A、实现语言
Java
B、环境要求
MyEclipse 10.6
二、机试题目
1.从控制台输入任意4位整数,输出该数字的各位数字之和,如图1所示。
图1
2.实现一个简单的英中天气转换器:表1为天气状况的中英文对照表,输入天气状况英文单词的第一个字母,根据输入判断天气状况,并输出天气的中文形式。
实现效果如图2所示。
表1:天气状况的中英文对照表
图2
3.模拟银行取款功能,用户输入取款金额,若输入取款金额不大于零,提示“输入的金额不正确”,若取款金额大于零并且小于余额,则将余额更新,提示“取款成功”,并输出余额。
若取款金额大于或等于余额,提示“余额不足”。
假设初始金额为5000元,银行要求账户余额不能低于1元。
实现效果如图3~图5所示。
图3~图5
要求:代码规范,有注释,能正确运行出结果,将.java源文件打包后,以自己的名字命名提交。
java机试题及答案
java机试题及答案一、概述Java是一种高级编程语言,常用于开发各种跨平台的应用程序。
机试题是评估Java程序员技能和知识的一种常见方式。
本文将提供一些常见的Java机试题及答案,以供参考。
二、题目一:变量和数据类型1. 请定义一个整型变量a,并赋值为5。
答案:int a = 5;2. 定义一个字符串变量name,并赋值为"Java"。
答案:String name = "Java";三、题目二:循环和条件语句1. 使用for循环计算1到10的累加和。
答案:int sum = 0;for (int i = 1; i <= 10; i++) {sum += i;}2. 使用if-else语句判断一个整数num是否是正数,若是则输出"正数",否则输出"非正数"。
答案:if (num > 0) {System.out.println("正数");} else {System.out.println("非正数");}四、题目三:数组和字符串操作1. 定义一个整型数组nums,包含元素{1, 2, 3, 4, 5},并输出数组中的所有元素。
答案:int[] nums = {1, 2, 3, 4, 5};for (int num : nums) {System.out.println(num);}2. 定义一个字符串str,并输出字符串的长度。
答案:String str = "Hello, Java!";int length = str.length();System.out.println("字符串长度:" + length);五、题目四:类和对象1. 定义一个名为Person的类,包含姓名和年龄属性。
提供一个构造方法用于初始化姓名和年龄,并提供方法获取和设置姓名、年龄。
java试题库及答案
java试题库及答案Java是一种广泛使用的高级编程语言,因其简洁、高效和跨平台性而备受程序员们的青睐。
为了帮助学习Java的同学更好地备战考试,我们特别整理了一份Java试题库及答案,希望对大家有所帮助。
一、基础知识题1. Java中基本数据类型有哪些?请简要说明各自的特点。
答:Java中的基本数据类型包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。
其中整型用于存储整数,浮点型用于存储小数,字符型用于存储字符,布尔型用于存储真假值。
2. Java中如何进行输入输出操作?答:在Java中,可以使用Scanner类进行输入操作,System.out.println()进行输出操作。
二、面向对象题1. 请简要说明面向对象编程的三大特性是什么?答:面向对象编程的三大特性是封装、继承和多态。
封装指的是将数据和方法封装到一个类中,通过访问修饰符来控制对外部的访问权限;继承指的是子类可以继承父类的属性和方法;多态指的是同一个方法在不同的对象下有不同的实现。
2. Java中如何实现继承?请编写一个简单的代码示例。
答:在Java中,可以通过extends关键字来实现继承。
示例代码如下:```javaclass Animal {public void eat() {System.out.println("Animal is eating");}}class Dog extends Animal {public void bark() {System.out.println("Dog is barking");}}public class Main {public static void main(String[] args) {Dog myDog = new Dog();myDog.eat();myDog.bark();}```三、异常处理题1. Java中如何处理异常?请简要说明try-catch-finally语句的作用。
Java内部测试笔试题及答案
《使用Java理解程序逻辑》内部测试-笔试试卷1) 给定某Java程序的main方法如下所示,该程序的运行结果是()。
public static void main(String[] args) {boolean boo = true;if (boo == false) {System.out.println("a");} else {System.out.println("b");}}A. 输出aB. 输出bC. 输出abD. 运行时出错2) 在Java中,下列代码的运行结果是()。
public static void main(String[] args) {int a=1,b=2,c=3;if(a<0)if(b<0)c=10;elsec=20;System.out.println(c);}A. 输出:10B. 输出:20C. 输出:3D. 编译报错3) 分析下面的Java程序段,编译运行后的输出结果是()。
public class Test {public void changeString(StringBuffer sb) {sb.append("stringbuffer2");}public static void main(String[] args) {Test a = new Test();StringBuffer sb = new StringBuffer("stringbuffer1");a.changeString(sb);System.out.println("sb = " + sb);}}A. sb = stringbuffer2stringbuffer1B. sb = stringbuffer1C. sb = stringbuffer2D. sb = stringbuffer1stringbuffer24) 在Java中,包有多种用途,但不包含()。
JAVA高级编程机试题
《Java高级编程》阶段测试试卷(机试题)姓名:__________________ 班级:_________________ (考试时间:90分钟,总分:100分)三、机试题一、为“无名的粉”写一个类:class WuMingFen,要求如下:1、有三个属性:味道:taste粉的分量(两):int quantity ;是否带汤:boolean likeSoup2、写一个构造方法,以便于简化初始化过程,如:WuMingFen f1 = new WuMingFen("牛肉",3,true);3、重载构造方法,使属性初始化能多样化,如:WuMingFen f2 = new WuMingFen("酸辣",2);问:那如何能通过一个构造方法构造出来一个粉对象是:麻辣味、2两、带汤的?请写一个普通方法,check(),用于查看粉是否是符合要求的。
(即将对象的三个属性打印在控制台上)二、创建一个Vehicle的接口,在接口中添加两个带有一个参数的方法start()和stop()。
在两个名称分别为Bike和Bus的类中实现Vehicle接口。
创建一个名为InterfaceDemo的类,在InterfaceDemo的main()方法中创建Bike和Bus对象,并访问start()和stop()方法,结果是可以分别打印出“Bike is started!”、“Bike is stoped!”、“Bus is started!”和“Bus is stopted!”三、按要求编写一个Java应用程序:(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。
(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性,和计算体积的方法。
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
四、请通过IO流方式实现以下功能:1)请先将testData.txt文件中的内容读取出来2)将读取的内容通过分隔符“|”转换为int数组后并计算所有元素的和,并将结果保存到result.txt 文件中,保存的结果如:number1 + number2 + number3 + number4 = total(每个元素的通过"+"相连)注:1、testData.txt文件是保存在我们项目的根目录下的。
JAVA测试题(三套含答案)
JAVA测试题(三套含答案)<测试一>1.在单一文件中import、class和package的正确出现顺序是:AA.package, import, classB.class, import, packageC.import, package, classD.package, class, import2.public static void main方法的参数描述是:A,DA.String args[]B.Strings args[]C.String argsD.String []args3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,DA.float f=1.3;B.char c="a";C.byte b=257;D.boolean b=null;E.int i=10;4.编译,运行下列代码后的结果是:Dpublic class Test {public static void main (String args []) {int age;age = age + 1;System.out.println("The age is " + age);}}A.编译,运行后没有输出B.编译,运行后输出:The age is 1C.能通过编译,但运行时产生错误D.不能通过编译4.下面那些关键字不是JAVA的关键字BA ifB thenC gotoD whileE case5.下面那些不是合法的变量定义:A,FA.2variableB.variable2C. _whatavariableD. _3_E. $anothervarF. #myvar6.内部数据类型byte的取值范围是BA.0 - 65, 535B.(–128) – 127C.(–32,768) – 32,767D.(–256) – 2557.下列哪些表达式返回true ABA."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.下面的代码能打印出的结果为:Cint i=1;switch (i) {case 0:System.out.println("zero");break;case 1:System.out.println("one");case 2:System.out.println("two"); default:System.out.println("default");}A.oneB.one, defaultC.one, two, defaultD.default10.下面的代码能打印出的结果为:B int i=9;switch (i) {default:System.out.println("default"); System.out.println("zero");break;case 1:System.out.println("one");case 2:System.out.println("two");}A.defaultB.default, zeroC.error default clause not definedD.no output displayed11.下面的代码那个能正常的编译通过:B,CAint i=0;if(i) {System.out.println("Hello");}Bboolean b=true;boolean b2=true;if(b==b2) {System.out.println("So true");}C.int i=1;int j=2;if(i==1|| j==2)System.out.println("OK");Dint i=1;int j=2;if(i==1 &| j==2)System.out.println("OK");12.Hello.txt不与Mine.java在同一个目录下,如果你试图编译,运行下面的代码,那么会是什么结果?Cimport java.io.*;public class Mine {public static void main(String argv[]){Mine m=new Mine();System.out.println(m.amethod());}public int amethod() {FileInputStream dis=new FileInputStream("Hello.txt"); }catch (FileNotFoundException fne) {System.out.println("No such file found");return -1;}catch(IOException ioe) {} finally{System.out.println("Doing finally");}return 0;}}13.当你试图准备编译,运行下面代码时会发生:CA.编译和运行很正常B.编译时错误C.运行时错误class Base {}class Sub extends Base {}class Sub2 extends Base {}public class CEx{public static void main(String argv[]){Base b=new Base();Sub s=(Sub) b;}}14.当你试图准备编译,运行下面代码时会发生:Dpublic class Tux extends Thread{static String sName = "vandeleur";public static void main(String argv[]){Tux t = new Tux();t.piggy(sName);System.out.println(sName);}public void piggy(String sName){sName = sName + " wiggy";start();}public void run(){for(int i=0;i < 4; i++){sName = sName + " " + i;}}}A.编译时错误B.编译成功,并打印出"vandeleur wiggy"C.编译成功,并打印出" vandeleur wiggy 0 1 2 3"D.编译成功,并打印出" vandelur"15.在什么情况下类获得默认的构造方法:BA.类被定义时B.类中没有定义任何构造方法时C.在类中至少定义了一个构造方法时16.listener(监听器)方法的正确的访问修饰符是什么?AA.publicB.staticC.privateD.protectedE.Default(即默认为空)17. 假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常:BA.throw ExceptionB.throws ExceptionC.new ExceptionD.不用特别指定18.下面的代码能打印出的结果是:A,Bpublic class MyFor{public static void main(String argv[]){int i;int j;outer:for (i=1;i <3;i++)inner:for(j=1; j<3; j++) {if (j==2)continue outer;System.out.println("Value for i=" + i + " Value for j=" +j);}}}A.Value for i=1 value for j=1B. Value for i=2 value for j=1C. Value for i=2 value for j=2D. Value for i=3 value for j=119.那个代码能够添加在//mothod here地方,并能正确执行?B,Cclass Base{public void amethod(int i) { }}public class Scope extends Base{public static void main(String argv[]){}//Method Here}A. void amethod(int i) throws Exception {}B. void amethod(long i)throws Exception {}C. void amethod(long i){}D. public void amethod(int i) throws Exception {} 20.运行下面代码能够得出的结果?BString s=new String("Bicycle");int iBegin=1;char iEnd=3;System.out.println(s.substring(iBegin,iEnd));A.BicB. icC. icyD. error: no method matching substring(int,char) 21.下面定义的变量能执行那些操作?AString s1=new String("Hello")String s2=new String("there");String s3=new String();A.s3=s1 + s2;B.s3=s1-s2;C.s3=s1 & s2;E.s3=s1 && s222. System.out.println(4 | 3);能打印出什么结果?DA 6B 0C 1D 723.传递4,0来运行下列代码中的方法divide(int a, int b),结果是:A public void divide(int a, int b) {try {int c = a / b;} catch (Exception e) {System.out.print("Exception ");} finally {System.out.println("Finally");}A.打印输出: Exception FinallyB.打印输出: FinallyC.打印输出: ExceptionD.没有任何输出24.对public void add(in t a) {…}方法的重写方法:AA.必须返回voidB.必须返回intC.可以返回任何需要的类型25. 对public void add(int a) {…}方法的重载方法应返回:CA.voidB.intC.任何类型26. 下列类分别在不同的文件中定义:Cclass Vehicle {public void drive() {System.out.println("Vehicle: drive");}}class Car extends Vehicle {public void drive() {System.out.println("Car: drive");}}public class Test {public static void main (String args []) {Vehicle v;Car c;v = new Vehicle();c = new Car();v.drive();c.drive();v = c;v.drive();}}编译和执行类Test后,结果是:A.在语句v= c;处产生编译时错误B.在语句v= c;处产生运行时错误C.输出:Vehicle: driveCar: driveCar: driveD.输出:Vehicle: driveCar: driveVehicle: drive27. 在子类构造方法内的什么位置可以对超类的构造方法(super())进行调用:BA.子类构造方法的任何地方B.子类构造方法的第一条语句处C.子类构造方法的最后一条语句处D.不能对超类的构造方法进行调用28. 下列代码中有明显的语法错误的语句是:C1.public class Test {2.public static void main (String args []) {3.Employee e = new Employee("Bob", 48);4. e.calculatePay();5.System.out.println(e.printDetails());6. e = Null;7. e = new Employee("Denise", 36);8. e.calculatePay();9.System.out.println(e.printDetails());10.}}A.Line 10B.Line 11C.Line 6D.Line 829. 选择可以建立线程的接口:AA.RunnableB.RunC.少数用于管理的系统部件D.ThreadE.Executable30. 选择正确生成text field的代码,此text field最多能够显示10个字符(假定其字体有固定大小)并最初显示“hello”串:AA.new TextField("hello", 10) ;B.new TextField(10,"hello");C.new TextField("hello",max,10);D.new TextField("hello",10,max);31. 选择定义在Graphics类中的方法:A,CA.drawLine(int, int, int, int) ;B.drawImage(Image, int, int, ImageObserver) ;C.drawString(String, int, int) ;D.add(Component);E.setVisible(boolean);F.setLayout(Object);32. 从下面的布局管理器中选择按行放置控件、从左到右、从上到下,当一行装满时开始新的一行的布局管理器:BA.CardLayoutB.FlowLayoutC.BorderLayoutD.GridLayout33. 选择可以替换一个Container对象布局的方法:AA.setLayout(aLayoutManager);B.addLayout(aLayoutManager);/doc/137072775.html,yout(aLayoutManage r);D.setLayoutManager(aLayoutManager);34. 一个类Example的main()方法的参数是args,类被如下调用执行:java Example catmain方法中访问args[0]的输出是什么?AA.catB.javaC.ExampleD.抛出一个NullPointerException异常E.抛出一个ArrayIndexOutOfBoundsException异常35.下面的代码编译,运行后得出的结果:Dpublic class Conv{public static void main(String argv[]){Conv c=new Conv();String s=new String("ello");c.amethod(s);}public void amethod(String s){char c='H';c+=s;System.out.println(c);}}A.编译成功,打印出"Hello"B. 编译成功,打印出"ello"C. 编译成功,打印出elloHD. 编译错误36.执行后打印的结果为:Cpublic class Oct{public static void main(String argv[]){ Oct o = new Oct(); o.amethod();}public void amethod(){int oi= 012;System.out.println(oi);}}A.12B.012C.10D.10.037.编译,执行下面的代码会出现的结果:Apublic class Ref{public static void main(String argv[]){ Ref r = new Ref();r.amethod(r);}public void amethod(Ref r){int i=99;multi(r);System.out.println(i);}public void multi(Ref r){r.i = r.i*2;}}A. 一个编译时错误B. 99C. 198D. 一个运行时错误.38.现在你存储一个唯一的整型序列,那么你需要哪个容器接口?AA.SetB.ListC.MapD.Vector39.给出下列代码,请选择2个正确输出?D,Epublic class Example{public static void main(String args[]){int i=0;do{System.out.println(“Doing it for i is”+i);} while (--i>0);System.out.println(“Finished”);}}A.Doing it for i is 3B.Doing it for i is 2C.Doing it for i is 1D.Doing it for i is 0E.Finished40. System.out.println(Math.floor(-2.1));打印的结果为:DA -2B 2.0C -3D -3.0<测试二>Java程序员笔试题一、单项选择题(共10题,每题2分,共20分)1.下列说法哪一个是正确的。
java 逻辑思维笔试题
以下是一些Java 逻辑思维笔试题,这些试题可以帮助你测试自己的逻辑思维能力以及Java 编程技能:
1.给定一个整数数组,找出数组中是否存在两个不同的数字,它们之间的差的绝对值等于
给定的数字k。
2.给定一个字符串,判断该字符串是否为回文字符串。
3.给定一个整数数组,找出数组中的最大值和最小值,并计算它们的差值。
4.给定一个整数数组,找出数组中是否存在重复的元素。
5.给定一个字符串,将字符串中的每个字符转换为其对应的ASCII 码值,并输出结果。
6.给定一个整数数组,找出数组中是否存在三个不同的数字,它们之和等于给定的数字k。
7.给定一个字符串,判断该字符串是否为偶数个字符。
8.给定一个整数数组,找出数组中是否存在两个不同的数字,它们之间的和等于给定的数
字k。
9.给定一个整数数组,找出数组中是否存在三个不同的数字,它们之积等于给定的数字k。
10.给定一个字符串,将字符串中的每个字符转换为其对应的字母在字母表中的下一个字
母,如果已经是字母表的最后一个字母,则将其转换为第一个字母。
输出转换后的字符串。
JAVA逻辑思维面试题
【01】假设有一个池塘,里面有无穷多的水。
现有2个空水壶,容积分别为5升和6升。
问题是如何只用这2个水壶从池塘里取得3升的水。
【02】周雯的妈妈是豫林水泥厂的化验员。
一天,周雯来到化验室做作业。
做完后想出去玩。
"等等,妈妈还要考你一个题目,"她接着说,"你看这6只做化验用的玻璃杯,前面3只盛满了水,后面3只是空的。
你能只移动1只玻璃杯,就便盛满水的杯子和空杯子间隔起来吗?" 爱动脑筋的周雯,是学校里有名的"小机灵",她只想了一会儿就做到了。
请你想想看,"小机灵"是怎样做的?【03】三个小伙子同时爱上了一个姑娘,为了决定他们谁能娶这个姑娘,他们决定用手枪进行一次决斗。
小李的命中率是30%,小黄比他好些,命中率是50%,最出色的枪手是小林,他从不失误,命中率是100%。
由于这个显而易见的事实,为公平起见,他们决定按这样的顺序:小李先开枪,小黄第二,小林最后。
然后这样循环,直到他们只剩下一个人。
那么这三个人中谁活下来的机会最大呢?他们都应该采取什么样的策略?【4】一间囚房里关押着两个犯人。
每天监狱都会为这间囚房提供一罐汤,让这两个犯人自己来分。
起初,这两个人经常会发生争执,因为他们总是有人认为对方的汤比自己的多。
后来他们找到了一个两全其美的办法:一个人分汤,让另一个人先选。
于是争端就这么解决了。
可是,现在这间囚房里又加进来一个新犯人,现在是三个人来分汤。
必须寻找一个新的方法来维持他们之间的和平。
该怎么办呢?按:心理问题,不是逻辑问题【5】在一张长方形的桌面上放了n个一样大小的圆形硬币。
这些硬币中可能有一些不完全在桌面内,也可能有一些彼此重叠;当再多放一个硬币而它的圆心在桌面内时,新放的硬币便必定与原先某些硬币重叠。
请证明整个桌面可以用4n个硬币完全覆盖【6】一个球、一把长度大约是球的直径2/3长度的直尺.你怎样测出球的半径?方法很多,看看谁的比较巧妙【7】五个大小相同的一元人民币硬币。
JAVA基础部分测试机试题
JA V A基础部分机试测试题一、所得税计算(25分)1、功能要求开发基于控制台的雇员所得税计算系统。
具体要求如下:(1)从控制台读取雇员名称,工资和加班补贴。
(5分)(2)根据工资和加班补贴计算所得税。
(15分)(3)计算完毕后输出,输出内容需包括税前工资,税后工资,应纳所得税额。
运行界面如图-1所示。
(5分)图-1 系统运行界面所得税的计算公式如下:税前收入=工资+加班补贴税后收入=税前收入-所得税额所得税额= 应纳税额* 税率当税前收入小于2000元时,应纳税额为0元;当税前收入大于等于2000元时,应纳税额是税前收入-2000税率的规则如下:二、凯撒加密器(25分)1、功能要求开发基于控制台的凯撒加密系统。
具体要求如下:(1)根据用户的选择从控制台待加密或解密的字符串。
如图-2和图-3所示。
(5分)(2)根据凯撒加密法,对字符串进行加密或解密。
(15分)(3)加密或解密完成后,把结果输出到控制台。
如图-4和图-5所示。
(5分)图-2 操作选择界面图-3 输入字符串界面图-4 加密后的界面图-5 解密后的界面凯撒加密法,就是将字母表中的每个字母向后移动3位,比如a被替换成d,b被替换成f,以此类推。
字母表的最后三位xyz,会被替换为abc。
比如hello,加密之后是khoor.对于拉丁字母之外的其他字符,一律不加密。
三、幸运抽奖(50分)实现功能:1. 注册 2.登录 3.幸运抽奖实现步骤:1.输出菜单(4分)2.选择菜单编号,输出菜单信息(4分)3.如果编号选择错误,输出“您的输入有误!(4分)4.系统询问用户是否继续(4分)5.如果用户选择继续,则可以继续选择菜单,否则程序结束,退出系统(4分)6.输入用户名和密码,系统产生4位随机数作为卡号。
(4分)7.注册成功,显示注册信息并修改注册标识为true(4分)8.输入注册时的用户名和密码,登录成功,系统提示欢迎信息(4分)9.如果用户名和密码输入错误,提示用户继续输入,最多有3次输入机会(4分)10.登录成功后,用户选择幸运抽奖菜单,进入幸运抽奖功能(4分)11.输入会员卡号,系统生成5个4位随机数作为幸运数字,存入数组中(4分)12.在数组中查找,如果会员卡号是其中之一,则成为本日幸运会员;否则不是幸运会员(6分)。
JAVA测试题汇总
JAVA测试题汇总在JAVA中,下列哪些说法是正确的(AC).java源文件的扩展名为.java.写好的java源程序可以直接运行.编写的源程序必须先编译后才能运行.程序员可以读懂扩展名为.class的文件下列标识符哪个是合法的(D).class.$abc.1234._name下面哪些赋值语句是正确的?(AB)float数值范围为-3.4*10的-38次幂到3.4*10的38次幂int other = (int) true; //是布尔类型系统会自动将ture转换成-1,false是十六进制的整形数值byte取值范围为(-2^7)~(2~7)-1即-128~127最大表示范围为:-263 ~ 263-1,即-9223372036854775808 ~。
在Java中,下列语句不能通过编译的有(ABCD )“join”+ 3;“join”+3;‘a’+5;设 a = 3,则表达式 (--a )<“<<”代表左移运算符。
该运算符为双目运算符,结合方向为从左到右,作用是把一个整移动到左边界之外的多余二进制位会被丢弃,并从右边0,--a=2 二进制就是 10,向左移动2位是1000,换算后等于8 下列代码运行的结果是(c )int x = 4;int y = 5;if(x++>4 & ++y>5) {x++;}System.out.println("x=" + x + ",y=" + y);x=4,y=6尝试运行下面的代码会发生什么?( B)public static void main(String[] args) {boolean m = true;if (m = false) {System.out.println("true");} else {System.out.println("false");}}输出字符串”true”输出字符串”false”编译时错误运行时错误编译并运行以下代码将发生什么?(D)char digit = 'a';for (int i = 0; i < 10; i++){switch (digit){case 'x' :{int j = 0;System.out.println(j);}default :{int j = 100;System.out.println(j);}}int i = j;输出11次100输出10次100,然后抛出运行期异常编译错误,因为变量i不能在main() 方法中被声明2次编译错误,因为变量j不能在main() 方法中被声明2次以上都不对class Demo Bpublic static int fun(int c)return c+=2;}public static void main(String[] args)int temp = fun(2);System.out.println(temp);}下面哪些函数是public void aMethod(){...}的重载函数?( BD) …}在java中,关于数组描述正确的是(CD ).数组中的索引下标从1开始.存储在数组当中的数据都属于同一数据类型.通过数组名.length()能获得数组的长度.数组的最大索引下标是数组的长度减1下面程序的输出结果是什么(A ).编译不通过.运行时出错.输出null.输出0下面哪个语句正确地声明一个整型的二维数组( C) 以下代码输出是( C )public static void main(String[] args) {int i = 0;int sum = 0;while (i <= 10) {i++;if (i % 2 != 0)continue;sum += i;}System.out.println(sum);}和下面代码能完成相同的选项是(B)public static void main(String[] args) {int i = 1;int sum = 0;while (i <= 100) {if (i % 2 == 0) {sum = sum + i;}i++;}System.out.println(sum);}上述全对下列有关类、对象和实例的叙述,正确的是哪一项?(D).类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称.类是对象的抽象,对象是类的具体化,实例是类的另一个名称.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称下面关于java中包的说法正确的是(AD)在java中可以使用import语句导入包在java中可以使用package语句导入包位于同一个包中的类,不需要导包就可以直接访问不同的包中可以出现类名相同的类下列有关抽象类的叙述正确的是哪项?(C).抽象类中一定含有抽象方法.抽象类既能被实例化也能被继承.抽象类的声明必须包含abstract关键字.抽象类中不能有构造方法下列有关接口的叙述错误的是哪项?(D).接口中只能包含抽象方法和常量.一个类可以实现多个接口.类实现接口时必须实现其中的方法.接口不能被继承运行以下代码片段,输出结果是?( D)Y b = new Y();X() {System.out.print("X");}Y() {System.out.print("Y");}Y y = new Y();Z() {System.out.print("Z");}public static void main(String[] args) {new Z();}下列关于类的继承的描述,正确的有( D )一个类可以同时继承多个父类一个类可以具有多个子类子类会自动拥有父类所有的方法一个类继承另一个类需要使用 extends 关键字下列选项中关于java中this关键字的说法错误的有( D )关键字是一个对象的引用关键字可以用于引用当前类以外其他类型的对象可用于构造函数中,调用类本身重载的构造函数,但是必须写在首行可用于静态方法中下列关于构造函数的说法正确的是( A )方法名必须与类名相同使用new关键字创建对象时,java虚拟机会自动调用构造函数我们在定义一个类时,必须要声明至少一个构造函数构造函数中不能使用return语句编译并运行以下代码将发生什么?( C )int x;MyClass(int i) {x = i;}public static void main(String args[]) {MyClass m1 = new MyClass(100);MyClass m2 = new MyClass(100);if (m1.equals(m2)) {System.out.println("Both are equal");} else {System.out.println("Both are not equal");}}代码编译时报出错误提示信息“equal s() 方法未定义”编译通过,抛出运行期异常.输出Both are equal.输出Both are not equal运行以下的main()方法,结果是?( A )String myString;int x = 100;if (x < 100) myString = "x is less than 100";if (x > 100) myString = "x is greater than 100"; System.out.println(myString.length());.编译时报出错误提示信息“变量myString没有被初始化”.编译通过.编译未能通过。
java考试题及答案
java考试题及答案一、选择题(每题2分,共20分)1. Java语言的标识符可以包含以下哪些字符?A. 数字B. 下划线C. 美元符号D. 空格答案:B2. 下列哪个选项是Java中的关键字?A. classB. mainC. publicD. all of the above答案:D3. Java中,哪个修饰符表示成员变量或方法是私有的?A. publicB. privateC. protectedD. static答案:B4. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B5. 在Java中,下列哪个数据类型是基本数据类型?A. StringB. intC. ArrayListD. HashMap答案:B6. 下列哪个选项不是Java集合框架的一部分?A. ListB. MapC. SetD. String答案:D7. Java中,哪个关键字用于定义接口?A. classB. interfaceC. abstractD. final答案:B8. 在Java中,下列哪个选项不是线程安全的?A. VectorB. ArrayListC. LinkedListD. HashMap答案:B9. Java中,下列哪个选项是正确的继承关系?A. Object is a subclass of StringB. String is a subclass of ObjectC. Object is a superclass of StringD. String is a superclass of Object答案:B10. 下列哪个选项不是Java中的访问修饰符?A. publicB. privateC. protectedD. global答案:D二、填空题(每题2分,共20分)1. Java中,用于定义类的关键字是______。
答案:class2. Java中,用于定义接口的关键字是______。
java考试试题及答案
java考试试题及答案一、选择题(每题2分,共20分)1. 下列哪个是Java的基本数据类型?A. StringB. IntegerC. intD. Object答案:C2. Java中的main方法是程序的入口点,它属于哪个类?A. ng.ObjectB. ng.SystemC. ng.RuntimeD. java.applet.Applet答案:A3. 下列哪个关键字用于定义类?A. classB. publicC. staticD. void答案:A4. Java中的哪个关键字用于实现接口?A. implementsB. extendsC. classD. interface答案:A5. 下列哪个是Java集合框架中的接口?A. ArrayListB. ListC. LinkedListD. HashMap答案:B6. 下列哪个不是Java的控制流语句?A. ifB. forC. switchD. while答案:C7. Java中的哪个类提供了日期和时间的处理功能?A. java.util.DateB. java.util.CalendarC. java.time.LocalDateD. java.time.LocalDateTime答案:B8. 下列哪个是Java的异常处理关键字?A. tryB. catchC. finallyD. all of the above答案:D9. 下列哪个不是Java的访问修饰符?A. publicB. privateC. protectedD. global答案:D10. 下列哪个不是Java的注释方式?A. // 单行注释B. /* 多行注释 */C. / 文档注释 */D. # 预处理指令答案:D二、填空题(每空2分,共20分)1. Java语言是________面向对象的编程语言。
答案:完全2. Java程序的执行流程是:编写源代码,编译成字节码,通过________加载并执行。
JAVA语言基础内部测试题(50道选择题)
JAVA语⾔基础内部测试题(50道选择题)JAVA语⾔基础内部测试题选择题(针对以下题⽬,请选择最符合题⽬要求的答案,针对每⼀道题⽬,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。
)(每题2分)没有注明选择⼏项的,只选择⼀项1、 JAVA所定义的版本中不包括:()A、 JAVA2 EEB、 JAVA2 CardC、 JAVA2 MED、 JAVA2 HEE、 JAVA2 SE2、下列说法正确的是()A、 JAVA程序的main⽅法必须写在类⾥⾯B、 JAVA程序中可以有多个main⽅法C、 JAVA程序中类名必须与⽂件名⼀样D、 JAVA程序的main⽅法中如果只有⼀条语句,可以不⽤{}(⼤括号)括起来3、 Java中,在如下所⽰的Test类中,共有()个构造⽅法。
public class Test{private int x;public Test(){x=35;}public void Test(double f){This.x=(int)f;}public Test(String s){}}A、 0B、 1C、 2D、 34、变量命名规范说法正确的是()A、变量由字母、下划线、数字、$符号随意组成;B、变量不能以数字作为开头;C、 A和a在java中是同⼀个变量;D、不同类型的变量,可以起相同的名字;5、下列javaDoc注释正确的是()A、 /*我爱北京天安门*/B、 //我爱北京天安门*/C、 /**我爱北京天安门*/D、 /*我爱北京天安门**/6、为⼀个boolean类型变量赋值时,可以使⽤()⽅式A、 boolean = 1;B、 boolean a = (9 >= 10);C、 boolean a="真";D、 boolean a = = false;7、以下()不是合法的标识符A、 STRINGB、 x3x;C、 voidD、 de$f8、表达式(11+3*8)/4%3的值是()A、 31B、 0C、 1D、 29、()表达式不可以作为循环条件A、 i++;B、 i>5;C、 bEqual = str.equals("q");D、 count = = i;10、运算符优先级别排序正确的是()A、由⾼向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由⾼向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由⾼向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由⾼向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;11、以下程序的运⾏结果是:()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. 666B. 667C. 677D. 67612、下列值不为true的表达式有()。
IBMJava测试题
IBMJava测试题Java第一阶段综合测试题考试时间:2个小时考试类型:闭卷姓名:________ 班级:________ 考试分数:_______一、单选题(每题2分,共40分)1.以下关于异常的说法正确的是:()A. 一旦出现异常,程序运行就终止了B. 如果一个方法申明将抛出某个异常,它就必须真的抛出那个异常C. 在catch子句中匹配异常是一种精确匹配D. 可能抛出系统异常的方法是不需要申明异常的2.下面关于Java的引用,说法正确的是:()A. 应用实际上就是指针B. 应用本身是PrimitiveC. 引用就是对象本身D. 一个对象只能被一个引用所指引3.对于import java.util包,以下那种说法是错误的?()A. Vector类属于java.util包B. Vector类放在…/java/util/目录下C. Vector类放在java.util文件中D. Vector类是Sun公司的产品4. 如下代码public class Test {public int aMethod() {static int i = 0;i++;return i;}public static void main (String args[]) {Test test = new Test();test.aMethod();int j = test.aMethod();System.out.println(j);}}输出结果是什么?(D)A. 0B. 1C. 2D. 编译失败5.如下代码:public class Foo {public static void main(String[] args) { try {return;} finally {System.out.println( "Finally" );}}}输出结果是什么?(A)A. FinallyB.编译失败C. 代码正常运行但没有任何输出.D. 运行时抛出异常6.下面的语句会产生什么样的输出?(A)System.out.println(4&7);A.4B.5C.6D.7E.07.下面的程序中,temp的最终值是什么?(B)long temp=(int)3.9;temp%=2;A .0B .1C .2D .3E .48.下面哪个不是JAVA关键字(A )A integerB doubleC floatD default9.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法10.下列标识符(名字)命名原则中,正确的是(D)A. 类名的首字母小写B. 变量和方法名的首写字母大写C. 接口名的首写字母小写D. 常量完全大写11.下列关于构造方法的叙述中,错误的是(C)A. Java语言规定构造方法名与类名必须相同B. Java语言规定构造方法没有返回值,但不用void声明C. Java语言规定构造方法不可以重载D. Java语言规定构造方法只能通过new自动调用12.类Test1定义如下:1.public class Test1{2.public float aMethod(float a,float b){ return 0;}3.4.}将以下哪种方法插入行3是不合法的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《使用Java理解程序逻辑》内部测试机试题
一、语言和环境
A、实现语言
Java
B、环境要求
MyEclipse 10.6
二、机试题目
1.使用二重循环打印如图-1所示的图形。
图-1
2.定义两个数组,首先把两个数组合并成一个新数组,然后把新数组中的所有元素逆序排列,需要实现的效果如图-2所示。
图-2
3.使用面向对象思想,输出员工信息并计算员工的工资。
实现过程为:定义一个部门
(Department)类,该类有部门编号(Id)、部门名称(Name)属性;再定义一个员工(Employee)类,该类的属性有员工编号(Id)、姓名(Name)、底薪(Salary),所在部门(Department,该属性的值为Department类的对象)。
然后为员工类定义一个计算工资(countSalary)的方法,该方法的参数为本月销售额(sales),返回值为该员工的月工资。
月工资的计算方法为:底薪+销售提成,销售提成的比例如下:小于10w为1%,10w至20w为2%,大于等于20w为3%。
在main()方法中,创建Department类和Employee类的对象、输入该员工的本月销售额后,计算并输出该员工的工资。
实现后的效果如图-3所示。
图-3
三、具体要求及推荐实现步骤
1.使用二重循环打印图形。
1)使用两个二重循环输出,1~4行使用一个二重循环,5~7行使用一个二重循环,
2)外层循环和内层循环配合输出该图形。
2.实现数组的合并与逆序操作。
1)创建两个数组并初始化元素的值。
2)创建第三个数组,并把前两个数组的元素复制到其中。
3)对第三个数组实现逆序操作。
3.使用面向对象思想编程,并计算员工工资。
1)按要求定义部门类。
2)按要求定义员工类,注意它的所在部门属性必须为Department类的对象。
3)在员工类中按要求定义countSalary()方法,注意该方法参数和返回值的类型都必须为double类型,然后实现计算工资的逻辑代码。
4)在main()方法中创建并初始化部门类对象,输出该对象的信息。
再创建并初始化员工类对象,输出该对象的信息。
然后输入员工的本月销售额,并调用员工类的
countSalary()方法计算员工工资。
四、注意事项
1、请注意代码格式规范,缩进符合要求
2、请注意命名符合规范,主要功能的代码必须有注释。