当前位置:  技术问答>java相关

真正请教:Serializable接口有哪些主要作用,为什么它与Socket类可实现邮件发送?在概念或原理上是如何实现的呢?

    来源: 互联网  发布时间:2015-01-11

    本文导语:  public class SMTPBean implements Serializable{ private Socket smtp; private BufferedReader input; private PrintStream output; private String smtpServer = "smtp.szptt.net.cn"; private String serverReply; private int port = 25; public SMTPBean() { } publ...

public class SMTPBean implements Serializable{
private Socket smtp;
private BufferedReader input;
private PrintStream output;
private String smtpServer = "smtp.szptt.net.cn";
private String serverReply;
private int port = 25;

public SMTPBean() {
}

public void connect() throws SMTPException {
try {
smtp = new Socket(smtpServer, port);
input = new BufferedReader(new InputStreamReader(smtp.getInputStream()));
output = new PrintStream(smtp.getOutputStream());
serverReply = input.readLine();
if (serverReply.charAt(0) == '2' || serverReply.charAt(0) == '3') {
}
else {
throw new SMTPException("Error connecting to SMTP server " + smtpServer + " on port " + port);
}
}
catch(Exception e) {
throw new SMTPException(e.getMessage());
}
}

|
Serializable 只是一个空的接口而已,其目的只是告诉Java Compiler,本类是支持序列化的,没有其他用处。

至于这段程序为什么可以实现与SMTP Server 的连接(注意,只是连接,并不能发信什么的,因为并没按SMTP的协议发出指令),那是因为SMTP Server 缺省是在 25 这个端口侦听,它只是一个普通的Socket 服务程序而已,你用Socket 客户端当然可以连接了。

|
Serializable接口本身并没有任何方法和属性,一个类从它继承,仅仅是说明了它可串行化。Socket类可用来连接服务器(只要提供了服务器地址和端口),这里实际上是用
Socket来实现一个SMTP客户端,你连接上服务器之后,只要遵从rfc:smtp标准协议,通过
向输出流中写入指令,便可完成收发电子邮件的功能了。
你这里就是不实现Serializable接口同样可以

    
 
 

您可能感兴趣的文章:

  • 谁用Ias成功实现过ejb呢,我成了!!可是我想实现分布式时却失败了,请教!
  • 请教在soket中怎样实现断点续传?
  • 请教包过滤c实现原理细节
  • 请教java中如何实现vb中chr() ,asc() 类似的功能?
  • 请教gcc编程 问题 关于调用中断 实现 图形模式
  • 请教,怎样实现IIS和resin 整合?
  • 请教如何用b shell/awk实现汇总
  • 请教:关于如何实现文件监控的问题
  • 请教一下:在UNIX下怎样实现和Windows下“计划任务”一样的功能。
  • 请教:两服务器之间的HTTP请求(非RMI实现)
  • sh 脚本:请教实现非root退出
  • 请教高手, 如何用expect实现BBS的自动登陆?
  • 请教有没有谁在 LINUX下实现对DVD光盘采用UDF格式刻录的?
  • 问题太难,请教高手,关于raid1功能的错误检测的实现
  • 请教高手:Unix下如何实现进程池?
  • 请教:在JavaScript中怎样实现网页的《后退》功能?
  • 请教:怎样实现分区自动挂接?
  • 请教linux下面的--help功能如何实现???
  • 请教使用openobex库实现蓝牙传输的问题
  • 请教:Linux下的时间比较,编程怎么实现?
  • 用Serializable实现的对象可以用流的形式存储在磁盘上,可再生,以后可以再取出来,请教!!!送分!!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 【请教】java中接口问题
  • 一个关于接口的问题,请教大家。谢谢!
  • 请教大家!!!java如何实现多重继承?接口该如何使用?份数可以再加,只要我明白了
  • 请教大家关于接口的问题!
  • 请教一个linux下网络接口的问题
  • 我刚学java,想请教一下,我在文本中创建了一个接口,一个类,还有一个扩展类,保存为.java文件时,如何给文件名?
  • 请教下大牛 命令行模式linux用USB接口挂一个未分区的硬盘如何分区
  • 请教linux驱动如何给UI上层提供接口,通知发生中断,谢谢!
  • 救命!!请教高手关于PS/2鼠标,PS/2键盘接口编程的问题
  • 高分请教一个概念性问题关于接口与构造函数方法?
  • 请教各位:Unix环境下socket接口服务端程序为什么会经常自己断开?100分赠英雄!
  • 请教,请教,这个问题是为什么????
  • java相关 iis7站长之家
  • ■请教■请教redhat最基本的问题!
  • 请教一个 shell 问题,我用下面这个 shell 语句总是失败,请教
  • 高分请教,各位大侠,请教一个问题,理论高手请进??谢谢
  • 请教Linux下pgadmin3-1.0.2的编译和安装!!高分请教!
  • 各位大虾,请教装了REDHAT9操作系统后,启动时无法引导到LINUX,请教该如何解决啊
  • 请教,请教,,,一定要看!!一定要看!!
  • 请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • :请教高手,小弟打印width=1500,height=600(A3纸)的Applet,在预览中是该区域是黑的,打印出来也是黑的,请教高手解决一下
  • 请教象我这样的硬盘应如何安装Linux,我昨天试装了,但有问题。(老问题了,也看了前面的帖子,但还是来请教,请多指教)
  • 请教这种循环的执行过程
  • 请教两个redhat9问题
  • 请教如何在指定目录下查找包含指定文字的文件
  • 请教局域网中如何通过ip地址得到主机名
  • 请教kdevelop的问题
  • 请教linux 下的adsl拨号问题.
  • 请教,如何用虚拟订机安装liux
  • 【请教】LINUX 下SNMP的MIB开发
  • 请教一个opengl的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3