详解java中的PropertyChangeSupport与PropertyChangeListener

java中的PropertyChangeSupport与PropertyChangeListener配合使用能够实现,绑定属性会在属性值发生变化时,通知所有相关的监听器。
javaBean:
package com.wang.test.property;
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
public class TestBean {
protected final PropertyChangeSupport support = new PropertyChangeSupport(this);
private String str;
public String getStr() {
return str;
}
public void setStr(String str) {
support.firePropertyChange("str", this.str, str);
this.str = str;
}
public void addPropertyChangeListener(PropertyChangeListener listener) {
support.addPropertyChangeListener(listener);
}
public void removePropertyChangeListener(PropertyChangeListener listener) {
support.removePropertyChangeListener(listener);
}
}
client:
package com.wang.test.property;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
public class PropertyChangeSupportTest {
public static void main(String[] args) {
TestBean test = new TestBean();
test.setStr("ddddd");
test.addPropertyChangeListener(new PropertyChangeListener1());
test.setStr("yyyy");
//test.addPropertyChangeListener(new PropertyChangeListener2());
//test.setStr("hhhhhhf");
}
public static class PropertyChangeListener1 implements PropertyChangeListener{
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println( "1: " + evt.getPropertyName() + " " + evt.getNewValue() + " " + evt.getOldValue());
}
}
public static class PropertyChangeListener2 implements PropertyChangeListener{
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println( "2: " + evt.getPropertyName() + " " + evt.getNewValue() + " " + evt.getOldValue());
}
}
}
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# java中的PropertyChangeSupport与PropertyChangeListener
# PropertyChangeSupport与PropertyChangeListener
# java property配置文件管理工具框架过程详解
# Java Property类使用详解
# Mybatis单个参数的if判断报异常There is no getter for property
# Java使用application.property读取文件里面的值
# Java通过PropertyDescriptor反射调用set和get方法
# Java的System.getProperty()方法获取大全
# JSP JavaBean的setProperty属性
# Java加载property文件配置过程解析
# 如有
# 会在
# 希望能
# 谢谢大家
# 绑定
# 疑问请
# protected
# final
# import
# beans
# public
# TestBean
# str
# getStr
# return
# support
# private
# String
# property
# PropertyChangeListener
相关文章:
在线制作视频网站免费,都有哪些好的动漫网站?
建站之星导航如何优化提升用户体验?
如何用免费手机建站系统零基础打造专业网站?
如何用5美元大硬盘VPS安全高效搭建个人网站?
制作网站的模板软件,网站怎么建设?
如何设计高效校园网站?
如何通过主机屋免费建站教程十分钟搭建网站?
完全自定义免费建站平台:主题模板在线生成一站式服务
如何基于云服务器快速搭建网站及云盘系统?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
建站ABC备案流程中有哪些关键注意事项?
如何通过万网虚拟主机快速搭建网站?
建站主机选购指南:核心配置与性价比推荐解析
如何在IIS7上新建站点并设置安全权限?
建站之星如何配置系统实现高效建站?
,如何利用word制作宣传手册?
如何自定义建站之星模板颜色并下载新样式?
湖北网站制作公司有哪些,湖北清能集团官网?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
如何快速搭建高效服务器建站系统?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
如何解决VPS建站LNMP环境配置常见问题?
如何在阿里云香港服务器快速搭建网站?
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
贸易公司网站制作流程,出口贸易网站设计怎么做?
建站主机选虚拟主机还是云服务器更好?
济南网站制作的价格,历城一职专官方网站?
如何在建站之星网店版论坛获取技术支持?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
建站之星如何快速解决建站难题?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
如何选择域名并搭建高效网站?
专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?
建站主机是否属于云主机类型?
c++怎么用jemalloc c++替换默认内存分配器【性能】
制作营销网站公司,淘特是干什么用的?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
广东专业制作网站有哪些,广东省能源集团有限公司官网?
建站之星安装后如何配置SEO及设计样式?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
郑州企业网站制作公司,郑州招聘网站有哪些?
如何选择高效可靠的多用户建站源码资源?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
详解jQuery中基本的动画方法
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
如何挑选高效建站主机与优质域名?
如何在阿里云完成域名注册与建站?
建站之星代理如何获取技术支持?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
*请认真填写需求信息,我们会在24小时内与您取得联系。