




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java 考 试 题 1设置windows下的JDK环境变量配置:(3分) Jdk 安装在 c:jdk1.5 (1) 配置JAVA_HOME= c:jdk1.5 (2) 配置path %JAVA_HOME%bin; (3) 配置CLASSPATH .; %JAVA_HOME%libtools.jar ; %JAVA_HOME%libdt.jar ; %JAVA_HOME%jrelibrt.jar 2 请填写下printf函数中控制输出格式字符的内容(8分) % 在字符串中显示% %d 以十进制整数方式输出,提供的数必须 是Byte、Short、Integer、Long或BigInteger %f 将浮点数以十进制方式输出,提供的数必须 是Float、Double或BigDecimal %e 将浮点数以十进制方式输出,并使用科学记数法,提供的 数必须是Float、Double或BigDecimal %s,%S 将字符串格式化输出 %c,%C 以字符方式输出,提供的数鼻血是Byte、Short、Character 或Integer %b,%B 将true或false输出(或TRUE,FALSE,使用%B)。另外, 非null值输出是true,null值输出是false %n n 换行 3是否可以动态设定数组的长度。(2分) A.可以 B不可以 4问打印的结果是什么?(2分) public class ArrayCopy public static void main(String args) int arr1 = 1, 2, 3, 4, 5; int arr2 =arr1; arr20=10; System.out.printf(“%d ,%d”,arr10,arr20); A.1,10 B.1,1 C,10,1 D.10,10 5问打印的结果是什么?(2分) public class ArrayCopy public static void main(String args) int arr1 = 1, 2, 3, 4, 5; int arr2 =new int5; arr2=System.arraycopy(arr1,0,arr2,0,5); arr20=10; System.out.printf(“%d ,%d”,arr10,arr20); A.1,10 B.1,1 C,10,1 D.10,10 6请问下面那些是java的关键字?(2分) break default goto True gc const key implement map set void return new clone run catch 所有关键字: byte short int long float double boolean char if else break do while goto continue return for case default switch abstract extends interface implements instanceof try catch finally void new true false public private protected final static enum package import synchronized strictfpassert native this super class null const transient 7Arrays类提供的几个方法(12分) 名称说明 Arrays.sort(array) 帮助你对array数组排序,所 使用的是快速排序法 Arrays.binarySearch(array,aInt)让你对已排序的array数组进 行二元搜索,查找int aInt=5, 如果找到指定的值就返回该值 所在的索引,否则就返回( )值 (A.正 B.负) Arrays.fill(array,5) 当你配置一个数组array之 后,会依数据类型来给定默认 值。例如整数数组就初始为( 0),可以使用某种方法将所有 的元素设定为指定的值为5 Arrays.equals(array1,array2) 比较两个数组array1和array2 中的元素值是否全部相等,如 果是将返回true,否则返回 false 8 String对象上的几个方法(36分) 方法说明 str.length() 取得字符串str的字符长度 str.equals(“abcd”) “abcd”.equals(str) 判断原字符串str是否等于指定字符 串”abcd” str.toLowerCase() 转换字符串中str的英文字符为小写 str.toUpperCase() 转换字符串str中的英文字符为大写 str.chatAt(2) 返回字符串str指定索引处2的字符 str1.equalsIgnoreCase(str2)忽略大小写比较两个String str1 和 str2的内容是否相同 “ac”.compareTo(”abb”) 按辞典顺序比较”ac”和”abb”的内 容,比较结果为( )(A.正数 B.负数 C.0) str.startsWith(“abc”) 查看字符串str是否以”abc”开头 str.endsWith(“abc”) 查看字符串str是否以”abc”结尾 str.indexOf(“abcd”) 对于字符串str返回指定字符 串”abcd”第一个找到的索引位置 str.lastIndexOf(“abcd”) 对于字符串str返回指定字符 串”abcd”最后一个找到的索引位置 str.substring(5) 对于字符串str取出指定索引处5至 字符串尾端的子字符串 “abcdef”.substring(2,4) 对于字符串”abcdef”取出指定索引 范围2到4子字符串,子串是(cd ) char charArray=str.toCharArray() 将字符串str转换为字符数组 charArray str.replace(“abc”,” #”) 对于字符串str,我们替换其中 的”abc”为”#” str.trim() 将字符串str两端的空白字符删除 9、作用域public,private,protected,以及不写时的区别,请在相应的地方划 对号。(4分) 作用域 当前类 同一package 子孙类 其他package public * * * * protected * * * friendly * * private * 不写时默认为friendly 10 char型变量中能不能存贮一个中文汉字?为什么?(2分) 可以,在java中,char型为一个字符两个字节,汉字也为两个 字节,所以可以 Java对于char型,采用了Unicode编码 11多线程有几种实现方法,都是什么?(2分) 两种,一个是继承java.lang.Thread类,另一个是实现 java.lang.Runnable接口,推荐实现接口 12程序员手工调用哪个方法,使线程变为可运行状态? (2分) A. public void start() B. public void run() C. public void init() D. public static void main(String args) E. public void runnable() 13 抽象类与接口涉及到的4个关键字分别是什么?并说出抽象类与接口 的相同点以及不同点。(7分) 抽象类:abstract extends 接口:interface implements 一个相同点:两者都不能够被实例化 两个不同点:1.抽象类可以有构造函数,接口不可以 2.抽象类里可以有不是抽象的方法,接口中的方 法必须都是抽象方法 3.抽象类里的域可以任意,但接口里的域必须是 public static final的。 4.继承某个抽象类的类是这个抽象类的子类,但 实现某个接口的类,不是这个接口的子类。 5.抽象类只支持单继承,接口可以多继承。 14请写出同步的关键字?(2分) synchronized 15请问obj instanceof A 与 obj.getClass()=A.class有什么区别?(2分) 前者是判断obj是否是A的实例或是A的子类的实例,后者是obj 必须就是A的实例 16 请问methodA返回的是什么类型?(2分) public class ReturnIt public ? methodA(byte x,double y) return (short)x/y*2; double 17 在sub子类当中写如下哪个方法将产生编译期错误?(2分) class Super public float getNum() return 3.2f; public class Sub extends Super /写方法 A.public float getNum()return 4.0f;/重写 B.public void getNum() 方法重写时错误,返回类型不符合要求 C.public void getNum(double d)/重载 D.public double getNum(float d)return 4.0d; /重载 18 编译错误 返回的结果是什么 (2分) 19 结果是什么?(2分) A什么都没打印出 B打印出Finally C编译错误 20 输出的结果是什么 ?(2分) 13323 21 结果是什么 ?(2分) public class NewMain public static void main(String args) System.out.println(odd(5)?true:false); public static int odd(int x) return x%2; 编译错误 22 结果是什么 ?(2分) public class NewMain public static void main(String args) try throw new Exception(); catch(Exception e) System.out.println(“Exception”); catch(IOException e) System.out.println(“IOException”); 编译错误 23 i与j的值是什么?(2分) int i=1 , j=10; do if(i+-j)continue; while(ij)break tp; System.out.println(i=+i+,j=+j); A i=1,j=1 B i=0,j=-1 C i=1,j=4 D i=0,j=4 40要想实现让自己的对象具有clone的功能,我们要怎么作?(2分) 实现java.lang.Cloneable接口 重新定义clone()方法 public Object clone() throws CloneNotSupportedException return super.clone(); 41 请说明List Set Map各自的特点.(6分) List可以通过索引值来取得元素值,元素的存取是循序的,放入的元素 可以重复 Set 有自己的一套排序规则,放入的元素不可以重复 Map 按Key-Value方式存取元素,有自己的排序规则,key不能重复 42Java当中的文档注释是什么?单行注释是什么?多行注释是什么?(6 分) 文档注释 /* */ 单行注释/ 多行注释/* */ 43 float aFloat=5.2; (6分) (1)取得它的绝对值方法 Math.abs(aFloat); (2)不大于参数的最大整数 Math.floor(aFloat); (3)不小于参数的最小整数 Math.ceil(aFloat); 44 字符比对符号(16分) 方法字符比对符号 . 符合任意一个字符 d符合09任一个数字字符 D符合09以外的字符 s符合t n xoB f r等空格符 w符合az AZ 09等字符,也就是数字或是字母都符合 W符合az AZ 09等之外的字符,也就是除数字与字母外都符 合 $匹配行结束符。 匹配一行的开始。 45贪婪量词(12分) 范例作用 X?X可出现一次或完全没有 X*X可出现零次或多次 X+X可出现一次或多次 XnX可出现n次 Xn,X可出现至少n次 Xn,mX可出现至少n次,但不超过m次 46.写出Object类中的方法名。 toString(),wait(),equals(),hashCode() ,notify(),notifyAll(), getClass(),clone(),finalize(); 47 要想让自己的对象能够放入到sort()方法中进行比较排序,我们要实现什么接口,实现什么 方法。(2分) 实现java.lang.Comparable接口中的compareTo()方法 48请生命一个枚举类型。名字为Action,元素为TRUN_LEFT,TURN_RIGHT ,提供 一个有参的构造器,参数为他们的描述。提供一个方法可以获得他们的描述内容。用什么方法 可以将字符串”TURN_LEFT”转变为该枚举类型.(8分) 可以用Action.valueOf(“TURN_LEFT”);方法完成类型转换 49请解释一下什么叫方法重载,什么叫方法覆写。(4分) 方法重载是对同一个类中具有相同功能的方法提供统一的名 称,通过参数列表不同进行区分 方法重写是父类对子类方法的改写,子类可以通过方法重写修 改父类的方法,方法重写时方法名必须相同,参数列表必须相 同,返回类型相同或是协变返回类型,权限修饰词不能缩小, 但可以相同或放大,static final private修饰的方法不能被 重写.子类重写父类的方法时,可以不抛出父类所抛出的异 常,或者抛出一部分异常,或者抛出父类抛出异常的子异常, 但决不能抛出父类所没有抛出的可控式异常。 50请你描述一下你是怎么理解this与static关键字的。要想使用父类中的内容,要使用什么关 键字?(6分) this是指当前对象的引用,必须有对象的存在,才有this。如 果局部变量和域成员名相同可以用this加以区分,以避免覆 盖。this加上括号,以及相应的参数列表值,可以用来调用相 应的构造器。 static修饰的成员属于类所有,可以没有对象,而直接通过类 的名称进行调用。static修饰的变量,在整个内存中只有一 份,供所有对象所共享,static修饰的区块或域,只被初始化 一次。static修饰的成员是静态成员,静态方法里不能够直接 使用非静态成员。 super关键字,调用父类中的成员 51描述一下你理解的java的垃圾回收机制。finalize()方法有什么作用,使用时要注意什么。 (6分) java的垃圾回收机制简称GC,它是由java虚拟机控制的守备线 程负责的,负责将没有引用的垃圾对象进行回收,释放内存。 Java的GC,在什么时候执行,是不得而知的。我们可以通过 System.gc()建议垃圾回收机制执行。finalize()是Object类 中的方法,所有Java对象都继承了该方法,在Java的垃圾回收 机制执行时,会自动调用该方法。使用时我们应尽量不要在 finalize()方法中写回收资源的语句或一些重要语句,因为该 对象何时被回收,我们不知道。 52请说明一下类的初始化顺序。再回答是先初始化父类还是子类。(6分) 父类静态区块或静态域 子类静态区块或静态域 父类非静态区块或非静态域 父类构造器 子类非静态区块或非静态域 子类构造器 要初始化子类必先初始化父类 53如何实现饿汉单例模式,写出一个FOO类的饿汉单例模式。(6分) public class Foo private static Foo foo=new Foo(); private Foo(); public static Foo getFoo() return foo; 54什么关键词修饰的方法可以完全是前期帮定。(2分)final static private 55在覆写父类方法的时候,是否可以放大父类别方法的权限。是否可以抛出比父类方法更多的 异常,还是什么情况可以抛出更多。(6分) 可以放大,或相同,但不能缩小父类别的方法权限,不可以抛 出比父类更多的异常,只能抛出和父类一样多的异常或是抛出 父类异常中的一部分或是抛出父类异常的子类异常,或者是不 抛出异常,但决不能抛出父类所没有抛出的异常 56如果要在内部匿名类别中使用某个方法中的变量,它必须宣告 为_final_的?(2分) 57public class Outer public class Inner . . 如何在外部类的静态方法中访问非静态内部类,写代码。(2分) Outer outer=new Outer(); Outer.Inner inner=outer.new Inner(); Inner inner=new Inner(); 58用什么方法能够实现类的动态载入, 然后用什么方法可以实 例化它。 (4分) 可以用Class类的静态forName()方法实现类的动态载入,或使 用类的加载器的loadClass ()方法 然后用Class实例的newInstance()方法将其实例化,但该类必 须有无参数的构造器。或者通过获得构造器实例的办法,通过 调用构造器的 newInstance()方法来实例化。 59请说明ArrayList LinkedList各自的特点。并用LinkedList实现一个队列 的功能(添代码)。(14分) ArrayList 的特点是按数组数据结构方式储存元素,根据索引取值比较快 速,但是对于在中间插入元素或是删除元素效率不高 LinkedList 的特点是采用链表式数据结构储存元素,对于中间插入元素 或删除元素效率较高 如果经常按顺序存取元素建议使用ArrayList,如果经常在中间执行插入 元素或删除元素的操作,建议使用LinkedList StringStack.java import java.util.*; public class StringStack private LinkedList linkedList; public StringStack() /(1) linkedList =new LinkedList(); public void push(String name) /将元素添加到位置一处 /(2) linkedList.addLast(); public String top() /获得第一个元素,但不删除它 /(3) return linkedList.getFirst(); public String pop() /获得第一个元素,并删除它. /(4) return linkedList.removeFirst(); public boolean isEmpty() /判断集合是否为空 /(5)return linkedList.isEmpty(); 60请说明HashSet LinkedHashSet TreeSet的各自特点。说明Set中的元素 依据哪两个方法判断是否为同一元素,并说明放在TreeSet中的元素要注 意实现哪个接口及方法。(10分) HashSet 有自己的一套排序规则,加入HashSet的元素不能够有重复的, HashSet采用Hash算法排序 LinkedHashSet 会按照加入元素的顺序取出元素,加入LinkedHashSet的 元素不能够有重复的,LinkedHashSet按照Hash算法存储元素 TreeSet中的元素是按照元素的compareTo()方法的比较结果进行排序 的,TreeSet中的元素不能重复,是以compareTo()作为判定依据的。 HashSet以及LinkedHashSet是以hashCode()与equals()方法判 断元素是否重复。 TreeSet 会按照用户通过实现java.lang.Comparable接口并重写 compareTo()方法自定义排列顺序 61请说明HashMap LinkedHashMap TreeMap的各自特点。(6分) HashMap有自己的一套排序规则,通过键值配对形式存储元素,取值时 通过提供Key来获取Value,对Key采用Hash算法排序,key不能重复 LinkedHashMap会按照加入元素的顺序获取元素,通过键值配对形式存 储元素,取值时通过提供Key来获取Value, 对Key采用Hash算法存储, key不能重复 TreeMap会按照用户通过实现java.lang.Comparable接口并重写的 compareTo()方法自定义排列顺序,通过键值配对形式存储元素,取值 时通过提供Key来或取Value, key不能重复 HashMap与LinkedHashMap是依赖于hashCode()与equals()方法 判断key是否重复。TreeMap是根据compareTo()方法判断 62请说出java.lang包中内嵌的三个Annotation,以及他们各自的用途. Override 查看所写的方法是否重写了父类的方法,如果没有 重写则在编译时报错 Deprecated通知java编译器如果有人使用了这个方法,提示 这个方法已经过期,即不再建议使用了 SupressWarnings 抑制警告,告诉java编译器我知道使用了 不建议使用的方法,不用再给我警告 63请说出4个meta-Annotation,并说明RetentionPolicy中的 SOURCE,CLASS,RUNTIME的区别。如果自己要写一个Annotation Debug,我们 要怎么写(写一个空类就可以).(14分) public interface Debug 64我想获得2007-12-17这个格式的当天日期的字符串,我要怎么进行处理(写出关键代 码)。(8分) Calendar cal=Calendar.getInstance(); cal.clear(); cal.set(Calendar.YEAR,2007); cal.set(Calendar.MONTH,12-1); cal.set(Calendar.DAY_OF_MONTH,17); DateFormat df=new SimpleDateFormat(“yyyy-MM-dd”); String date=df.format(new Date(cal.getTime() 65尝试编译和运行下列代码,指出结果是多少?(SUN公司面试题) public class Inc public static void main(String args) Inc inc=new Inc(); int i=0; inc.fermin(i); i=i+; System.out.println(i); void fermin(int i) i+; A. 编译错误 B.2 C.1 D.0 66给定下面的类: public class ZeroPrint public static void main(String args) int i=0; /这里 哪个选项替换掉类中的/这里不会输出结果0? (SUN公司面试题) A.System.out.println(i+); B.System.out.println(i+0); C.System.out.println(i); D.System.out.println(i-); 67.A.x=x+1,B.x+=1,C.x+哪个效率最高? 68.考虑以下代码 class Modify public static void main(String args) int i,j,k; i=100; while(i0)/1 j=i*2; System.out.println(=+j);/2 k=k+1;/3/没赋初值 i-;/4 以下哪个表达式是不正确的?(VIA公司面试题) A.1 B.2 C.3 D.4 69. class Test public static void main(String args) byte b=2,e=3; byte f=b+e; System.out.println(f); A.打印5 B.打印23 C.编译不通过 (神州数码面试题) 70.下面程序执行会出现错误吗?如果有错,是什么错误? import java.io.*; import java.lang.*; public class Jex1 public static void main(String args) String i=123,s; s=getStr(i);/静态方法中调用非静态方法 System.out.pritnln(s); public String getStr(String s) StringBuffer sb=new StringBuffer(); for(int i=s.length()-1;i=0;i-) sb.append(s.charAt(i); return sb.toString(); 71.哪一个main()函数的声明是不合法的?(应该有两个)(朗讯公司面试 题) A.public static void main() B.public static void main(String strings) C.public static void main(String exp) throws FileNotFoundException D.static void main(String args) 72.下面标签名中,哪个是不合法的?(朗讯公司面试题) A.here B.-there C.this D.that不能以-开头 73.当你去编译和运行下面的代码时,会发生下面哪种情况?(Synospys 公司面试题) A. 编译时错误 B. 程序运行时,等待一个键盘输入然后就跳出 C. 程序运行时,等待一个键盘输入,在屏幕上显示 出“=”然后跳出 D. 运行中立即跳出 74(中国台湾Trend公司面试题) public class Test public static void changeStr(String str) str=welcome; public static void main(String args) String str=1234; changeStr(str); System.out.println(str); 请问输出的结果是什么? 1234 75. (中国台湾Trend公司面试题) public class Test public static void main(String args) String str=new String(World); char ch=H,e,l,l,o; change(str,ch); System.out.println(str+ and); System.out.println(ch); public static void change(String str,char ch) str=Change; ch0=c; 请问输出的结果是什么? World and cello 76. (中国台湾Trend公司面试题) public class Test public static void main(String args) String str=new String(World); char ch=H,e,l,l,o; change(str,ch); System.out.println(str+ and); System.out.println(ch); public static void change(String str,char ch) str=Change; ch=new charc,e,l,l,o; 请问输出的结果是什么? World and Hello 77.关于静态变量的创建,哪一个选项是正确的? A.一旦一个静态变量被分配,它就不允许改变 B.一个静态变量在一个方法中,它就不允许改变。 C.在任意多个类的实例中,一个静态变量的实例只存在一个。 D.静态变量和非静态变量没什么区别 78.当编译和运行下列代码时会出现什么情况? public class Sandys private int count; public static void main(String args) Sandys s=new Sandys(99); System.out.println(s.count); Sandys(int ballCount) count=ballCount; A. 编译时错误,count变量定义的是私有变量 B. 编译时错误,当System.out.println()方法被调用的时候s没有被初 始化 C. 编译和执行时没有输出结果 D. 编译运行时输出结果是99 79.当你编译和运行下面的代码时,会出现下面选项中的哪种情况? public class Pvf static boolean Paddy; pub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 富阳新桥江绿道施工方案
- 湖北机制铸铁管施工方案
- 2025安徽宿州市砀山县招聘幼儿园教师40人考前自测高频考点模拟试题及答案详解(各地真题)
- 凤台县沥青砼施工方案
- 《2025项目中介合同》
- 2025财务管理委托合同范本
- 木屋施工安装方案范本
- 于都初二英语试卷答案及答案
- 机关保安考试试题及答案
- 弧形树脂排水沟施工方案
- GB/T 45845.1-2025智慧城市基础设施整合运营框架第1部分:全生命周期业务协同管理指南
- 2025年国有企业管理岗竞聘笔考试试题库及答案
- 小区禁毒宣传活动方案
- JG/T 455-2014建筑门窗幕墙用钢化玻璃
- T/CNFAGS 3-2021三聚氰胺单位产品消耗限额
- 一例胃癌患者的疑难病例讨论
- 专题 有理数的加减运算计算题(50题)(4大题型提分练)(原卷版)
- 2025白山市辅警考试试卷真题
- 2025年中国银鳕鱼段行业市场发展前景及发展趋势与投资战略研究报告
- GB/T 45333-2025类金刚石薄膜球盘法测试类金刚石薄膜的摩擦磨损性能
- 贵州省赫章县野马川镇初级中学-红色精神张桂梅【课件】
评论
0/150
提交评论