根据声明变量的类型自动转换方法的返回值类型,例如在某个类SpringContextHolder里定义了如下方法
public static <T> T getBean(String name) {
return (T) applicationContext.getBean(name);
}
如果bean的实际类型是MySpringBean ,使用时只需直接使用,如下:
MySpringBean mySpringBean = SpringContextHolder.getBean("mybean");
此时无需强制转化。
如果声明变量的类型与实际的bean的类型不一致,则会在运行时抛出java.lang.ClassCastException: 异常。