服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java 事例教程(1)


  // ************************************
// 一个简单的java 程序
// 功能是演示一个小窗口,并具有读写文件的功能。
// @author gaogao
// @date 2004-11-04
// ************************************

// ************************************
// 引入gui和gui事件处理的类,和i/o管理的类
// ************************************
import java.awt.*;
import java.awt.event.*;
import java.io.*;

// ************************************
// testone,一个演示菜单和按钮的application
// 程序。
// ************************************
public class testone extends frame implements actionlistener {
//继承自frame,实现actionlistener接口
//frame是一个窗体的框架类,actionlistener是事件接口,实现他
//可以做事件处理。

// ************************************
// 声明变量
// ************************************
// 菜单控制
private menubar mb;
private menu mfile;
private menuitem miload;
private menuitem misave;
private menuitem miexit;
// 按钮
private textarea textarea;
// 磁盘管理
private file file;
// 文件名
public static final string filename_str = "love.txt";
// ************************************
// 构造
// ************************************
public testone() {
init();

putobjectstomyframe();
addlistenerstoobjects();
setthewindow();
}
// ************************************
// 分配对象内存
// ************************************
private void init() {
mb = new menubar();
mfile = new menu("file");
miload = new menuitem("load");
misave = new menuitem("save");
miexit = new menuitem("exit");

textarea = new textarea("");
}

// ************************************
// 装各个部件到窗口
// ************************************
private void putobjectstomyframe() {
setmenubar(mb);
mb.add(mfile);
mfile.add(miload);
mfile.add(misave);
mfile.add(miexit);
add(textarea);
}

// ************************************
// 设置窗口
// ************************************
private void setthewindow() {
this.setsize(400,300);
this.show();
addwindowlistener(
new windowadapter() {
public void windowclosing(windowevent we)
{
system.exit(0);
}
}
);
}
// ************************************
// 设置事件监听器
// ************************************
private void addlistenerstoobjects() {
miload.addactionlistener(this);//将miload这个菜单的事件监听放在这个窗口的实例中
misave.addactionlistener(this);
miexit.addactionlistener(this);

}
// ************************************
// 事件监听器(就是这个类的事例)监听到事件后
// 调用。此方法是actionlistener接口中抽象
// 方法的实现。
// ************************************
public void actionperformed(actionevent ae) {
if (ae.getsource() == miload)
{

//
system.out.println("loading");
datainputstream dis;

try {
file = new file(filename_str);
dis = new datainputstream(new fileinputstream(file));
textarea.settext("");
////没java doc 文档 不会写了。待完善。
dis.close();
}
catch (exception ex)
{
system.out.println(ex.getmessage());
}




}
else if (ae.getsource() == misave)
{
//
system.out.println("saving");
dataoutputstream dos;
try {
file = new file(filename_str);
dos = new dataoutputstream(new fileoutputstream(file));
int i = 0;
string temp = textarea.gettext();
while (i < temp.length())
{
dos.writechar(temp.charat(i++));
}

dos.close();
}
catch (exception ex)
{
system.out.println(ex.getmessage());
}


}
else if (ae.getsource() == miexit)
{
//退出应用程序
system.out.println("exit");
system.exit(0);
}

}
// ************************************
// 程序入口。
// ************************************
public static void main(string[] args) {
new testone();
}
}

扫描关注微信公众号