/** * Default constructor. * * @param type the Java type of the property. * @param elementType the Java type of the elements of the property if the * {@link #getType() type} is a collection type. * @throws NullArgumentException if {@code type} is <code>null</code>. */ public PropertyType(final Class<?> type, final Class<?> elementType) throws NullArgumentException { this.type = Arg.checkNotNull("type", type); this.elementType = calcDefaultElementType(type, elementType); }