Refine
Year of publication
- 2016 (2)
Document Type
- Article (1)
- Conference Proceeding (1)
Language
- English (2) (remove)
Has Fulltext
- no (2)
Keywords
- Abstract interpretation (1)
- Bytecode (1)
- Data privacy (1)
- Immutability (1)
- Internet (1)
- Mobile computing (1)
- Multicast communication (1)
Even though immutability is a desirable property, especially in a multi-threaded environment, implementing immutable Java classes is surprisingly hard because of a lack of language support. We present a static analysis tool using abstract bytecode interpretation that checks Java classes for compliance with a set of rules that together constitute state-based immutability. Being realized as a Find Bugs plug in, the tool can easily be integrated into most IDEs and hence the software development process. Our evaluation on a large, real world codebase shows that the average run-time effort for a single class is in the range of a few milliseconds, with only a very few statistical spikes.