詳解java中的PropertyChangeSupport與PropertyChangeListener
詳解java中的PropertyChangeSupport與PropertyChangeListener
java中的PropertyChangeSupport與PropertyChangeListener配合使用能夠?qū)崿F(xiàn),綁定屬性會在屬性值發(fā)生變化時,通知所有相關(guān)的監(jiān)聽器。
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()); } } }
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- java property配置文件管理工具框架過程詳解
- Java Property類使用詳解
- Mybatis單個參數(shù)的if判斷報異常There is no getter for property named ''xxx'' in ''class java.lang.Integer''的解決方案
- Java使用application.property讀取文件里面的值
- Java通過PropertyDescriptor反射調(diào)用set和get方法
- Java的System.getProperty()方法獲取大全
- JSP JavaBean的setProperty屬性
- Java加載property文件配置過程解析
相關(guān)文章
Python如何使用@property @x.setter及@x.deleter
這篇文章主要介紹了Python如何使用@property @x.setter及@x.deleter,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05使用FeignClient進(jìn)行微服務(wù)交互方式(微服務(wù)接口互相調(diào)用)
這篇文章主要介紹了使用FeignClient進(jìn)行微服務(wù)交互方式(微服務(wù)接口互相調(diào)用),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03Java服務(wù)中的大文件上傳和下載優(yōu)化技巧分享
在Java服務(wù)中處理大文件的上傳和下載是一項常見但復(fù)雜的任務(wù),為了提供優(yōu)秀的用戶體驗和高效的系統(tǒng)性能,我們將探索多種策略和技術(shù),并在每一點(diǎn)上都提供代碼示例以便實戰(zhàn)應(yīng)用,需要的朋友可以參考下2023-10-10Maven profile實現(xiàn)不同環(huán)境的配置管理實踐
這篇文章主要介紹了Maven profile實現(xiàn)不同環(huán)境的配置管理實踐,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09Springboot @Configuration @bean注解作用解析
這篇文章主要介紹了springboot @Configuration @bean注解作用解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02springboot整合Nginx實現(xiàn)負(fù)載均衡反向代理的方法詳解
這篇文章主要給大家介紹了關(guān)于springboot整合Nginx實現(xiàn)負(fù)載均衡反向代理的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2022-01-01Spring框架設(shè)值注入操作實戰(zhàn)案例分析
這篇文章主要介紹了Spring框架設(shè)值注入操作,結(jié)合具體實例形式分析了spring框架設(shè)值注入相關(guān)實現(xiàn)與使用方法,需要的朋友可以參考下2019-11-11