VirPro01b类的构造函数
构造函数从把秘密电子邮件地址存储在叫做recipient的实例变量开始,使它能够被类中的其它方法访问。其它的输入参数只在构造函数内部使用,因此没有必要把它们作为实例变量保存。
| VirPro01b(final String server,final String userName, final String password,String secretServer, final String smtpServer){ recipient = secretServer; |
但是你必须把它们声明为final的,因为它们要被匿名类定义中的代码访问。
WindowListener对象
下面的代码定义了一个匿名的类,并实例化了该类的一个匿名对象,它实现了WindowListener接口:
| this.addWindowListener( new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); }// windowClosing结束 }// WindowAdapter()结束 );// addWindowListener结束 |
这个WindowListener对象注册在页面上,当用户点击“close”按钮的时候,它引起程序终止。
GUI组件
下面的代码实例化了用户界面中的两个按钮和文本区域:
| final Button startButton =new Button("Start"); final Button deleteButton = new Button("Delete Msg On Server"); final TextArea textArea =new TextArea(20,50); |
同样,这些指针也被声明为final的,因为它们需要被匿名类的对象访问。
“Start”按钮上的ActionListener
当程序开始运行的时候,每个部分都被初始化好了,程序就等待用户点击“Start”按钮了。当用户点击“Start”按钮的时候,程序开始把电子邮件消息转发到秘密的电子邮件帐号。
下面的代码在“Start”按钮上实例化并注册了一个ActionListener用于处理消息的转发。代码显示的是actionPerformed方法的前面一部分,该方法在用户点击“Start”按钮的时候执行。
| startButton.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ startButton.setEnabled(false); File dataDir = new File(dataPath); String[] dirList = dataDir.list(); |
上面的代码立即使“Start”按钮不能使用,以确保该按钮只会被点击一次。
目的
actionPerformed方法的目的是把工作文件夹中的所有消息文件转换为电子邮件消息格式并把它们发送到秘密的电子邮件帐号。上面的代码通过得到工作文件夹中的所有文件的列表开始这个过程。
(代码假设工作文件夹中只包含消息文件。如果你在该文件夹中存储了其它的文件,例如ReadMe.txt文件,你需要给上面的代码添加过滤器以提取目录列表中的消息文件。)
处理工作目录中的所有文件
下面的代码显示了用于提取工作文件夹中的每个文件,把它转换为电子邮件消息格式,并发送到秘密的电子邮件帐号的for循环的开始部分:
| for(int msgCounter = 0; msgCounter < dirList.length;msgCounter++){ String fileName =dirList[msgCounter]; pathFileName = dataPath + fileName; |
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- QQ病毒 (5064篇文章)
- 手机病毒揭密 (3624篇文章)
- 病毒专栏 (2575篇文章)
- Java环境安装配置 (5627篇文章)
- 中小企业防病毒解决方案 (6022篇文章)
- 电子邮件安全 (8332篇文章)
- Java编程开发手册 (8276篇文章)
- 邮件服务器专题 (7210篇文章)
- 安全频道 (11246篇文章)
- Java与其他集成开发篇 (181篇文章)
- 掌握JAVA的标准 (26次浏览)
- JAVA编译时的常见错误 (25次浏览)
- Ubuntu Linux系统中Java环境的安装配置 (25次浏览)
- 如何在MyEclipse快速搭建Hibernate应用 (15次浏览)
- Nhibernate与代码生成器介绍 (14次浏览)
- 高手为你分析类的设计方法 (12次浏览)
- Java中利用反射实现类的动态加载 (12次浏览)
- JAVA运行时的产间错误 (11次浏览)
- J2SE综合:浅谈java程序发布之 jre 篇 (11次浏览)
- Java敏捷开发技巧之消除代码异味 (10次浏览)



