企业面试笔试题总汇v1.5

上传人:n**** 文档编号:37152205 上传时间:2018-04-07 格式:DOCX 页数:62 大小:147.49KB
返回 下载 相关 举报
企业面试笔试题总汇v1.5_第1页
第1页 / 共62页
企业面试笔试题总汇v1.5_第2页
第2页 / 共62页
企业面试笔试题总汇v1.5_第3页
第3页 / 共62页
企业面试笔试题总汇v1.5_第4页
第4页 / 共62页
企业面试笔试题总汇v1.5_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《企业面试笔试题总汇v1.5》由会员分享,可在线阅读,更多相关《企业面试笔试题总汇v1.5(62页珍藏版)》请在金锄头文库上搜索。

1、企业面试题总汇企业面试题总汇JavaJava 基础部分基础部分1、 请列举至少 3 个 JDK 安装目录下的可执行程序(javac),并列举几个常用的命令行参数1、 javac 将 Java 源代码换成字节代 用法:用法:javac 可能的选项包括: -g 生成所有调试信息 -g:none 生成无调试信息 -g:lines,vars,source 生成只有部分调试信息 -O 优化;可能妨碍调试或者增大类文件 -nowarn 生成无警告 -verbose 输出关于编译器正在做的信息 -deprecation 输出使用了不鼓励使用的 API 的源程序位置 -classpath 指定用户类文件的位置

2、 -sourcepath 指定输入源文件的位置 -bootclasspath 覆盖自举类文件的位置 -extdirs 覆盖安装的扩展类的位置 -d 指定输出类文件的位置 2.jar 打架包,查看架包用法:用法:jar ctxuvfm0M jar-文件 manifest-文件 -C 目录 文件名 .选项: -c 创建新的存档 -t 列出存档内容的列表 -x 展开存档中的命名的(或所有的)文件 -u 更新已存在的存档 -v 生成详细输出到标准输出上 -f 指定存档文件名 -m 包含来自标明文件的标明信息 -0 只存储方式;未用 ZIP 压缩格式 -M 不产生所有项的清单(manifest)文件 -

3、i 为指定的 jar 文件产生索引信息3.javadoc:根据 Java源代码及其说明语句生成的 HTML 文档用法:用法:javadoc options packagenames sourcefiles classnames files -overview读取 HTML 格式的概述文档-public 仅显示 public 类和成员 -protected 显示 protected/public 类和成员(缺省) -package 显示 package/protected/public 类和成员 -private 显示所有类和成员 -help 显示命令行选项 -doclet 通过候选 docle

4、t 生成输出 -docletpath 指定 doclet 类文件的查找位置 -sourcepath 指定源文件的查找位置 -classpath 指定用户类文件的查找位置4.javah:产生可以调用 Java 过程的 C 过程,或建立能被 Java 程序调用的 C 过程的头文件用法:用法:javah options 其中 options 包括: -help 打印该帮助信息 -classpath 类的加载路径 -bootclasspath 自举类的加载路径 -d 输出目录 -o 输出文件(仅能使用 -d 或 -o 之一) -jni 生成 JNI 风格的头文件(缺省) -old 生成 JDK1.0

5、风格的头文件 -stubs 生成 stubs 文件 -version 打印版本信息 -verbose 输出有关本命令所做工作的信息 -force 始终写输出文件2、 请分析命题:“Java 采用自动垃圾回收技术(GC) ,因此不会出现内存泄露”对象的建立和放置都是在内存堆栈上面进行的。程序或者其他的对象可以锁定一块堆栈地址来进行其他对象的引用。当一个对象没有任何引用的时候,Java 的自动垃圾回收机制就发挥作用,自动删除这个对象所占用的空间,释放内存以避免内存泄漏。但是内存泄漏并不是就此而完全避免了,当程序员疏忽大意地忘记解除一个对象不应该有的引用的时候,内存泄漏仍然不可避免,不过发生的几率要

6、比不启用垃圾回收机制的 C+程序少很多。但总体来讲,自动垃圾回收机制要安全和简单许多。3、 简单描述单子模式(单例模式)的各种不同实现方式,极其各自优缺点。请列举至少 2 种其他的设计模式及应用场景。1、 /*单例设计模式主要有 2 种实现方式:懒汉式、饿汉式。 2、 他们分别有如下实现: 3、 饿汉式: 4、 /饿汉式单例类.在类初始化时,已经自行实例化 */ 5、 public class Singleton1 6、 /私有的默认构造子 7、 private Singleton1() 8、 /已经自行实例化 9、 private static final Singleton1 single

7、 = new Singleton1(); 10、 /静态工厂方法 11、 public static Singleton1 getInstance() 12、 return single; 13、 14、 15、 懒汉式: 16、 /懒汉式单例类.在第一次调用的时候实例化 17、 public class Singleton2 18、 /私有的默认构造子 19、 private Singleton2() 20、 /注意,这里没有 final 21、 private static Singleton2 single=null; 22、 /静态工厂方法 23、 public synchronize

8、d static Singleton2 getInstance() 24、 if (single = null) 25、 single = new Singleton2(); 26、 27、 return single; 28、 29、 30、 /*其他设计模式: 31、 1.适配器模式 32、 应用场景:比如说在朋友聚会上遇到一个德国人 sarsh,可以我不会德语,她不会中文,我只好求助于我的朋友 mary 了,他作为我和 sarsh 之间的 adapt,让我和 sarsh 可以交流了。 33、 2.装饰模式 34、 应用场景:想要自己做礼物送给朋友,拿出去年在华山顶上的照片,在背面写上“最

9、好的礼物”再到街上礼品店买个相框,在找隔壁学美术的朋友设计一个漂亮的盒子装起来,我们都是Decorator。*/ 4、 输出结果1. public static void main(String args)throws Exception 2. String str = “中国“; 3. System.out.println(str.getBytes(“UTF-8“).length); 4. System.out.println(str.getBytes(“GBK“).length); 5. System.out.println(str.getBytes(“ISO-8859-1“).lengt

10、h); 6. System.out.println(new String(str.getBytes(“ISO-8859-1“),(“ISO-8859-1“); 7. System.out.println(new String(str.getBytes(“UTF-8“),(“UTF-8“); 8. System.out.println(new String(str.getBytes(“GBK“),(“GBK“); 9. 10. 输出结果:11. 612. 413. 214. ?15. 中国16. 中国5、 使用二分查找法找字符串数组“a“,“b“,“c“,“d“,“e“,“f“,“g“,“h“中

11、“g“元素5、 public class Query4Half 6、 static int bsearch( String a, String v ) 7、 int l, r; 8、 l = 0; r = a.length-1; 9、 while ( l 0 ) r = m-1; else 13、 if ( pareTo(v) 7、 private class Node 8、 public Node pre; 9、 public Node next; 10、 public AnyType data; 11、 public Node(AnyType d, Nodep, Node n) 12、 p

12、ublic Node() 13、 14、 private int theSize; 15、 private Node Header; 16、 private Node Tail; 17、 public MyList() 18、 public void add(AnyType item) 19、 public boolean isEmpty() 20、 public int size() 21、 public AnyType get( int idx) 22、 public void print() 23、 24、 /*Node类定义了双向链表中节点的结构,它是一个私有类,而其属性和构造函数都是

13、公有的,这样,其父类可以直接访问其属性,而外部类根本不知道 Node 类的存在。Data 是节点中的数据与,pre 指向前一个 Node 节点,next 指向后一个 Node 节点。其构造函数的实现如下,不解释:25、 View Code*/ 26、 public Node(AnyType d, Nodep, Node n) 27、 this.data = d; 28、 this.pre = p; 29、 this.next = n; 30、 31、 public Node() 32、 this.data = null; 33、 this.pre = null; 34、 this.next =

14、 null; 35、 36、 /*下面我们看一下链表的构造函数实现: 37、 View Code*/ 38、 public MyList() 39、 theSize = 0; 40、 Header = new Node(null,null,null); 41、 Tail = new Node(null,Header,null); 42、 Header.next = Tail; 43、 44、 /*我们构造了一个带有头、尾节点的双向链表,头节点的 Next 指向尾节点,为节点的 pre 指向头节点。链表长度起始为 0。 45、 继续贴上链表类其它方法的实现,不解释了,应该比较清楚:*/ 46、 /View Code 47、 public void add(AnyType item) 48、 Node aNode = new Node(item,null,null); 49、 Tail.pre.next = aNode; 50、 aNode.pre = Tail.pre; 51、 aNode.next = Tail; 52、 Tail.pre = aNode; 53、 theSize+; 54、 55、 public boolean isEmpty() 56、 return ( theSize = 0); 57、 58、 public int size()

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号