import java.lang.reflect.ParameterizedType;
public abstract class Base<T> {
private Class<T> persistentClass;
@SuppressWarnings("unchecked")
public Base() {
// 获取持久化对象的类型
this.persistentClass = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass())
.getActualTypeArguments()[0];
}
public Class<T> getPersistentClass() {
return persistentClass;
}
public void printClazz() {
System.out.println(persistentClass.getName());
}
}
import java.util.HashSet;
import java.util.Set;
public class BaseSub extends Base<BaseEntity> {
public static void main(String[] args) {
Base b = new BaseSub();
b.printClazz();
// 初始化只双花括号用法
Set<String> VALID_CODES = new HashSet<String>() {
{
add("XZ13s");
add("AB21/X");
add("YYLEX");
add("AR2D");
}
};
}
}
class Example {
public static void main(String[] args) {
// label冒充URL用法
http: // www.iteye.com
System.out.println("Hello World!");
}
}
public class BaseEntity {
}