|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
关于第二点:俺问问你,如果是企业级项目的话,诸如RMI,EJB,等一些关键技术,这些难道都不需要学么?如果光是使用jsp,servlet,javabean的话。
新AWT事务模子给我们带来的一个优点就是天真性。在老的模子中我们自愿为我们的程序举措困难地编写代码。但新的模子我们能够用单一办法挪用增添和删除事务举措。上面的例子证实了这一点:- //:DynamicEvents.java
- //ThenewJava1.1eventmodelallowsyouto
- //changeeventbehaviordynamically.Also
- //demonstratesmultipleactionsforanevent.
- importjava.awt.*;
- importjava.awt.event.*;
- importjava.util.*;
- publicclassDynamicEventsextendsFrame{
- Vectorv=newVector();
- inti=0;
- Button
- b1=newButton("Button1"),
- b2=newButton("Button2");
- publicDynamicEvents(){
- setLayout(newFlowLayout());
- b1.addActionListener(newB());
- b1.addActionListener(newB1());
- b2.addActionListener(newB());
- b2.addActionListener(newB2());
- add(b1);
- add(b2);
- }
- classBimplementsActionListener{
- publicvoidactionPerformed(ActionEvente){
- System.out.println("Abuttonwaspressed");
- }
- }
- classCountListenerimplementsActionListener{
- intindex;
- publicCountListener(inti){index=i;}
- publicvoidactionPerformed(ActionEvente){
- System.out.println(
- "CountedListener"+index);
- }
- }
- classB1implementsActionListener{
- publicvoidactionPerformed(ActionEvente){
- System.out.println("Button1pressed");
- ActionListenera=newCountListener(i++);
- v.addElement(a);
- b2.addActionListener(a);
- }
- }
- classB2implementsActionListener{
- publicvoidactionPerformed(ActionEvente){
- System.out.println("Button2pressed");
- intend=v.size()-1;
- if(end>=0){
- b2.removeActionListener(
- (ActionListener)v.elementAt(end));
- v.removeElementAt(end);
- }
- }
- }
- publicstaticvoidmain(String[]args){
- Framef=newDynamicEvents();
- f.addWindowListener(
- newWindowAdapter(){
- publicvoidwindowClosing(WindowEvente){
- System.exit(0);
- }
- });
- f.setSize(300,200);
- f.show();
- }
- }///:~
复制代码
这个例子接纳的老手法包含:
(1)在每一个按钮上附着很多于一个的吸收器。一般,组件把事务作为多外型处置,这意味着我们能够为单个事务注册很多吸收器。当在特别的组件中一个事务作为单一外型被处置时,我们会失掉TooManyListenersException(即太多吸收器非常)。
(2)程序实行时代,吸收器静态地被从按钮B2中增添和删除。增添用我们后面见到过的办法完成,但每一个组件一样有一个removeXXXListener()(删除XXX吸收器)办法来删除各类范例的吸收器。
这类天真性为我们的编程供应了更壮大的才能。
我们注重到事务吸收器不克不及包管在命令他们被增添时可被挪用(固然现实上年夜部分的实行事情都是用这类办法完成的)。
最后就是我对java的几点希望:首先是IDE工具,有人说java已经很好了,有jbuilder,eclipse,net网页编程Beans等等,但是我认为如果java想超越.net网页编程,那么他首先要解决的就是IDE工具的整合。 |
|