Java 事件触发接口回调方法
其技巧就是:定义一个简单接口,并在该接口中声明我们要调用的方法,一般可以应用在键盘鼠标事件跟踪。
下面举一个例子:
假定我们希望在某个事件发生时得到通知。我们可以定义一个接口:
/*
* 在某个事件发生时得到通知.
*/
public interface InterestingEvent {
public void interestingEvent(); //其它方法体及方法定义也可.
}
此接口中的方法,是个没有返回值的也没有任何参数,如果您愿意也可以有返回值,也可以带参数.这就要看具体需求而定.
这使得我们可以控制实现该接口的类的任何对象。因此,我们不必关心任何外部类型信息。与在将 C++ 代码用于Motif 时使用窗口小部件的数据域来容纳对象指针的难以控制的 C 函数相比,这种方法要好得多。
实现接口的代码如下:
public class CallMe implements InterestingEvent {
public CallMe() {
}
public void interestingEvent() {
System.out.println("发生了CallMe事件,哈哈");
}
}
public class CallYou implements InterestingEvent {
public CallYou() {
}
public void interestingEvent() {
System.out.println("发生了CallYou事件,哈哈");
}
}
发出事件信号的类必须等待实现了 InterestingEvent 接口的对象,并在适当时候调用 interestingEvent() 方法。
public class EventNotifier {
private InterestingEvent ie; //接口对象引用
private boolean somethingHappened ;
public EventNotifier() {
somethingHappened = true ;
}
public void setInterestingEvent(InterestingEvent ie){ //参数引用附值
this.ie = ie ;
}
相关文档:
Reflection 是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来。
Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C ......
一、多种方式读文件内容。
1、按字节读取文件内容
2、按字符读取文件内容
3、按行读取文件内容
4、随机读取文件内容
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
imp ......
类是一个抽象的概念,是指把具有相同属性和相同行为特征的对象归为一体
而对象就是一个具体的事物,它是属于某个类的一个特例
在一个类中,只有属性定义和方法定义部分,其他语句都是错误 ......
昨天看到留言,于是今天又把一些功能加进进去了
比如,
1,程序可以最小化到系统托盘区
2,程序可以批量保存所有截过的图片
3,修正了以前的一个小BUG,那就是输入保存图片的文件名时,如果没有输入后缀名,将保存正常,如果输入了后缀名,将会保存格式出错
打包文件请点击这里下载,dist文件夹里面的JAR文件是可以双击执行的
感 ......