收藏 分享(赏)

CoreJavaIO&Socket 面试题.ppt

上传人:精品资料 文档编号:10901881 上传时间:2020-01-19 格式:PPT 页数:12 大小:223KB
下载 相关 举报
CoreJavaIO&Socket 面试题.ppt_第1页
第1页 / 共12页
CoreJavaIO&Socket 面试题.ppt_第2页
第2页 / 共12页
CoreJavaIO&Socket 面试题.ppt_第3页
第3页 / 共12页
CoreJavaIO&Socket 面试题.ppt_第4页
第4页 / 共12页
CoreJavaIO&Socket 面试题.ppt_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、2020/1/19,Tarena项目部谢勇,1,CoreJavaIO&Socket部分笔试题 制作人:Daemon谢勇,。 。 。 。 。 。 。,2020/1/19,Tarena项目部谢勇,2,91、什么是java 序列化,如何实现java 序列化?,2020/1/19,Tarena项目部谢勇,3,答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题;序列化的实现:将需要被序列化的类实现Serializable 接口,该接口没有需实现的方法,impl

2、ements Serializable 只是为了标注该对象是可被序列化的,然后使用一个输出流(如FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream 对象的writeObject(Object obj)方法就可以将参数为obj 的对象写出(即保存其状态),要恢复的话则用输入流。,2020/1/19,Tarena项目部谢勇,4,92、java 中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?,2020/1/19,Tarena项目部谢勇,5,答:字节流,字符流。字节流

3、继承于InputStream、OutputStream,字符流继承于Reader、Writer。在java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。,2020/1/19,Tarena项目部谢勇,6,93、文件和目录(IO)操作:1)如何列出某个目录下的所有文件?2)如何列出某个目录下的所有子目录?3)如何判断一个文件或目录是否存在?4)如何读写文件?,2020/1/19,Tarena项目部谢勇,7,答:1)示例代码如下:File file = new File(“e:总结“);File files = file.listFiles();for(int i=0; ifiles.

4、length; i+)if(filesi.isFile() System.out.println(filesi);2)示例代码如下:File file = new File(“e:总结“);File files = file.listFiles();for(int i=0; ifiles.length; i+)if(filesi.isDirectory() System.out.println(filesi);3)创建File 对象,调用其exsit()方法即可返回是否存在,如:System.out.println(new File(“d:t.txt“).exists();4)示例代码如下:/

5、读文件:FileInputStream fin = new FileInputStream(“e:tt.txt“);byte bs = new byte100;while(true)int len = fin.read(bs);if(len = 0) break;System.out.print(new String(bs,0,len);fin.close();/写文件:FileWriter fw = new FileWriter(“e:test.txt“);fw.write(“hello world!“ + System.getProperty(“line.separator“);fw.wr

6、ite(“你好!北京!“);fw.close();,2020/1/19,Tarena项目部谢勇,8,94、写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数。,2020/1/19,Tarena项目部谢勇,9,答:代码如下:public int countWords(String file, String find) throws Exceptionint count = 0;Reader in = new FileReader(file);int c;while (c = in.read() != -1) while (c = find.charAt(0) for (

7、int i = 1; i find.length(); i+) c = in.read();if (c != find.charAt(i) break;if (i = find.length() - 1) count+;return count;,2020/1/19,Tarena项目部谢勇,10,95、Java 的通信编程,编程题(或问答),用JAVA SOCKET 编程,读服务器几个字符,再写入本地显示?,2020/1/19,Tarena项目部谢勇,11,答:Server 端程序:package test;import .*;import java.io.*;public class Ser

8、verprivate ServerSocket ss;private Socket socket;private BufferedReader in;private PrintWriter out;public Server()try ss=new ServerSocket(10000);while(true)socket = ss.accept();String RemoteIP = socket.getInetAddress().getHostAddress();String RemotePort = “:“+socket.getLocalPort();System.out.println

9、(“A client come in!IP:“+ RemoteIP+RemotePort);in = new BufferedReader(new InputStreamReader(socket.getInputStream();String line = in.readLine();System.out.println(“Cleint send is :“ + line);out = new PrintWriter(socket.getOutputStream(),true);out.println(“Your Message Received!“);out.close();in.clos

10、e();socket.close();catch (IOException e)out.println(“wrong“);public static void main(String args)new Server();,2020/1/19,Tarena项目部谢勇,12,Client 端程序:package test;import java.io.*;import .*;public class Client Socket socket;BufferedReader in;PrintWriter out;public Client()try System.out.println(“Try to

11、 Connect to 127.0.0.1:10000“);socket = new Socket(“127.0.0.1“,10000);System.out.println(“The Server Connected!“);System.out.println(“Please enter some Character:“);BufferedReader line = new BufferedReader(new InputStreamReader(System.in);out = new PrintWriter(socket.getOutputStream(),true);out.println(line.readLine();in = new BufferedReader(new InputStreamReader(socket.getInputStream();System.out.println(in.readLine();out.close();in.close();socket.close();catch(IOException e)out.println(“Wrong“);public static void main(String args) new Client();,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报