Custom events (Java)

xiaoxiao2021-03-06  69

I just want to write it for a long time. I don't know what I am busy during this time. I will write a text today :) I started to see the addListener () method in the Java class, I feel that it is very simple, I think I think Write an event to find out that it is still some learning. MyChangeEvent.java event class, inherited Java.util.EventObject MyChangelistener.java listening interface, inherited Java.util.EventListener myclass.java implemented the event's processing mechanism MyEventtest.java junit test

/ * * Created on Nov 26, 2004 11:25:14 pm * * mychangeeent.java ** / pack org.yz21.study.event;

Import java.util.EventObject;

/ ** * @Author violin * * Copyright www.yz21.org 2003-2004 * / public class mychangeeevent extends EventObject {Private String myname

/ ** * @param source * / public MyChangeEvent (Object source) {super (source);} / * * @param source myname * / public MyChangeEvent (Object source, String myname) {super (source); this.myname = MyName;} / * * @return string * / public string getMYName () {return myname;}

}

/ * * Created on Nov 26, 2004 11:27:55 pm * * mychangelistener.java ** / package org.yz21.study.event;

Import java.util.eventlistener;

/ ** * @Author violin * * Copyright www.yz21.org 2003-2004 * / public interface mychangelistener extens eventListener {/ * * @Param Event * / public void mychangeeevent eve;

}

/ * * Created on Nov 26, 2004 11:32:01 pm * * myclass.java ** / pack org.yz21.study.event;

Import java.util.iterator; import java.util.vector;

/ ** * @Author violin * * Copyright www.yz21.org 2003-2004 * / public class myclass {

Private string name = "2004-9-27"; private static vector mychangelisteners = new vector ();

/ ** * * / public myclass () {super ();

/ * * @Param myname * / public void testMyEvent (String myname) {this.name = myname; notifyMyChangeListeners ();} / * * @param listener add a listener; * / public void addMyChangeListener (MyChangeListener listener) {myChangeListeners.add (listener);} / * * @param listener remove a listener; * / public void removeMyChangeListener (MyChangeListener listener) {myChangeListeners.remove (listener);} / * * notify all listeners; * / private void notifyMyChangeListeners () {MyChangeEvent event = new MyChangeEvent (MyClass.class, name); Iterator iterator = ((Vector) myChangeListeners.clone ()) iterator ();. while (iterator.hasNext ()) {MyChangeListener listener = (MyChangeListener) iterator.next (); Listener.mychanged (evening);}}}

/ * * Created on Nov 26, 2004 11:47:04 pm * * myEventtest.java ** / pack org.yz21.study.event;

Import junit.framework.test; import junit.framework.testcase; import junit.framework.testsuite;

/ ** * @Author violin * * Copyright www.yz21.org 2003-2004 * / public class myeventtest extends testcase ustecsener {private myclass myclass; private string testname

/ ** * constructor for myEventtest. * @Param arg0 * / public myEventtest (String arg0) {super (arg0);

Public static void main (string [] args) {junit.textui.teestrunner.run (myEventtest.class);}

/ * * @See testcase # setup () * / protected void setup () throws exception {myclass = new myclass (); myclass.addmychangelistener (this); this); this.testname = "yz21.org";

/ * * @See TestCase # tearDown () * / protected void tearDown (throws Exception) {myclass = null;} / * * @see TestCase # suite () * / public static Test suite () {return new TestSuite (MyEventTest. Class); // Troubled to parameters} public void mychanged {this.testname = event.getmyname (); public void testmyEvent () {Myclass.TestMyevent ("www.yz21.org"); this. Assertequals ("Test Event", "www.yz21.org", testname);}}: 1, Java DOCS 2, Apache Jmeter 3

转载请注明原文地址:https://www.9cbs.com/read-87154.html

New Post(0)