3 ms·
> Why java.beans.PropertyChangeListener is from Swing UI? Well the java.beans package and Swing UI are in the same module. Why? Because java.beans depends on A
by needusername 9y ago
> Why java.beans.PropertyChangeListener is from Swing UI?
Well the java.beans package and Swing UI are in the same module. Why? Because java.beans depends on AWT. Why? Because of interfaces like this https://docs.oracle.com/javase/8/docs/api/java/beans/BeanInfo.html https://docs.oracle.com/javase/8/docs/api/java/beans/BeanInf... Could AWT und Swing still be split into different modules? Maybe. Does that mean that almost every Java application will have to deploy two UI toolkits, PLaFs and sound even if it's just a web service? Yes because almost every Java application at least indirectly depends on java.beans. Does Oracle or Java 9 / Jigsaw marketing care? No.
- lmm 9y agoWhat's the use case for java.beans in a non-GUI application? Why do you say almost every Java application depends on it?
- needusername 9y ago> What's the use case for java.beans in a non-GUI application? Mostly simplified calling of getters and setters, i.e. emulation of object properties. > Why do you say almost every Java application depends on it? - JAXB (XML binding) and Activation depend on it, so if you have direct or indirect dependency on JAXB or Activation you need java.beans. - Spring depends on java.beans
- vbezhenar 9y agoIt's hard to imagine an application without getters and setters. Now if you want to read/write those beans in a generic way, you need to use reflection. And correct approach is to use java.beans classes instead of rolling your own low-level solution.