近5年常考Java面试题及答案整理(三)
副标题[/!--empirenews.page--]
<div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm="post"> ?上一篇:68、Java中如何实现序列化,有什么意义? 答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决对象流读写操作时可能引发的问题(如果不进行序列化可能会存在数据乱序的问题)。 69、Java中有几种类型的流? 答:字节流和字符流。字节流继承于InputStream、OutputStream,字符流继承于Reader、Writer。在 fileCopy(String source,String target) (InputStream in = (OutputStream out = [] buffer = [4096 ((bytesToRead = in.read(buffer)) != -1 out.write(buffer,0 fileCopyNIO(String source,String target) (FileInputStream in = (FileOutputStream out = FileChannel inChannel = FileChannel outChannel = ByteBuffer buffer = ByteBuffer.allocate(4096 (inChannel.read(buffer) != -1 }
70、写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数。 答:代码如下: counter = 0 (FileReader fr = (BufferedReader br = String line = ((line = br.readLine()) != index = -1 (line.length() >= word.length() && (index = line.indexOf(word)) >= 0 counter++ line = line.substring(index + } }71、如何用Java代码列出一个目录下所有的文件? 答: 如果需要对文件夹继续展开,代码如下所示: showDirectory( File("/Users/nnngu/Downloads" _walkDirectory(f,0 _walkDirectory(File f, _walkDirectory(temp,level + 1 ( i = 0; i < level - 1; i++ System.out.print("t" }在Java 7中可以使用NIO.2的API来做同样的事情,代码如下所示: main(String[] args) Path initPath = Paths.get("/Users/nnngu/Downloads" Files.walkFileTree(initPath, SimpleFileVisitor72、用Java的套接字编程实现一个多线程的回显(echo)服务器。 答: ECHO_SERVER_PORT = 6789 (ServerSocket server = System.out.println("服务器已经启动..." ( Socket client = Thread( } ClientHandler .client = (BufferedReader br = BufferedReader( PrintWriter pw = String msg = System.out.println("收到" + client.getInetAddress() + "发送的: " + } } } }
下面是一段回显客户端测试代码: main(String[] args) Socket client = Socket("localhost",6789 Scanner sc = System.out.print("请输入内容: " String msg = PrintWriter pw = BufferedReader br = BufferedReader( }(编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |