net.sf.ivmaidns.util
Interface Immutable

All Known Implementing Classes:
ConstPair, ConstVector, DNSMsgHeader, DNSName, DNSRecAltCmp, DNSRecord, GComparator, StorageEvent, StrComparator, UnsignedInt, UnsignedLong

public interface Immutable

Tagging interface for immutable objects. This interface should be implemented by a custom class which instances have constant (immutable) internal state. This interface has no methods or fields and serves only to identify the semantics of being immutable. Here are some important notes for developers of the classes for immutable objects: such classes should be declared as final and should not extend any other classes; they must not have any methods for changing state of this object; all their variable fields must never be changed even indirectly (all the fields should be final); methods synchronization is not needed.

Since:
2.0
Version:
2.0
Author:
Ivan Maidanski
See Also:
ReallyCloneable, ConstVector, UnsignedInt, GComparator