JAVA中的委托事件模型
Java自JDK1.1之后采用委托事件模型(delegation event model)。委托事件模型是进行图形用户界面设计的核心,在了解该模型之前,先介绍几个基本概念。
1、 事件
事件(event)是指一个状态的改变,或者一个活动的发生。例如,用户点击窗口关闭按钮,发生窗口关闭事件;用户单击一个按钮,产生动作事件
2、 事件源
发生事件的组件称为事件源。例如,用户单击窗口关闭按钮是在窗口上发生的事件,所以窗口为事件源;用户单击按钮产生的动作事件是在按钮上发生的,所以按钮为事件源。
3、 事件类和事件监听器接口
Java将事件封装成事件类,并为每一个事件类定义一个事件监听器接口(listener interface),约定事件处理方法,指定产生事件时执行的操作。
常用的事件类和对应的事件监听器接口如表1所示:
4、委托事件模型
当我们点击窗口或按钮等组件,想让程序执行希望的操作时,需要实现该事件对应的事件监听器接口,也就是告诉程序如果发生这类事件,该怎么处理。单这样还不行,不是谁发生该事件都进行处理,要指明哪个事件源发生该事件才进行处理。因此还需要在事件源上注册该监听器对象。这样事件源和事件监听器之间就建立了联系,当事件源发生该事件时,注册在事件源上的监听器对象就能监听到该事件,从而执行事件监听器的对应方法。这就是事件委托模型,如图1所示。
处理发生在某个图形用户界面组件上的XxxEvent事件的某种情况,其事件处理的通用编写流程:
(1) 编写一个实现XxxListener接口的事件监听器类。
(2) 在XxxListener类中的用于处理该事件情况的方法中,编写处理代码。
(3) 调用组件的addXxxListener方法,将类XxxListener创建的实例对象注册到事件源组件上。
举一个简单的例子,在Frame组件上添加一个Button按钮,点击Button按钮关闭窗口。
作者:aEstell
链接:https://www.jianshu.com/p/cac99c0f172b
来源:简书
类的构造方法不是要求必须定义的。如果在类中没有定义任何一个构造方法,则 Java 会自动为该类生成一个默认的构造方法。默认的构造方法不包含任何参数,并且方法体为空。
java中的构造方法review
构造方法的特点:
构造方法名与类名相同
构造方法没有返回值 类型,也不写void
构造方法可以重载
构造方法的作用:
在创建对象时,给属性赋初值
构造方法何时使用
构造方法在创建对象时被调用
构造方法的分类:
显示的构造方法和隐式的构造方法
当声明了构造方法时,系统不会提供隐式的默认的无参构造方法
构造函数与类名相同,在new一个对象时调用 构造函数,构造函数可以重载
HttpServlet容器响应Web客户请求流程如下:
1)Web客户向Servlet容器发出Http请求;
2)Servlet容器解析Web客户的Http请求;
3)Servlet容器创建一个HttpRequest对象,在这个对象中封装Http请求信息;
4)Servlet容器创建一个HttpResponse对象;
5)Servlet容器调用HttpServlet的service方法,这个方法中会根据request的Method来判断具体是执行doGet还是doPost,把HttpRequest和HttpResponse对象作为service方法的参数传给HttpServlet对象;
6)HttpServlet调用HttpRequest的有关方法,获取HTTP请求信息;
7)HttpServlet调用HttpResponse的有关方法,生成响应数据;
8)Servlet容器把HttpServlet的响应结果传给Web客户。
doGet() 或 doPost() 是创建HttpServlet时需要覆盖的方法.
默认值 | 存储需求(字节) | 取值范围 | 示例 | |
byte | 0 | 1 | -2^7—2^7-1 | byte b=10; |
char | ‘ \u0000′ | 2 | 0—2^16-1 | char c=’c’ ; |
short | 0 | 2 | -2^15—2^15-1 | short s=10; |
int | 0 | 4 | -2^31—2^31-1 | int i=10; |
long | 0 | 8 | -2^63—2^63-1 | long o=10L; |
float | 0.0f | 4 | -2^31—2^31-1 | float f=10.0F |
double | 0.0d | 8 | -2^63—2^63-1 | double d=10.0; |
boolean | false | 1 | true\false | boolean flag=true; |