Java常见面试题:泛型通配符问题

Java常见面试题:泛型通配符问题

对于这两种操作大部分情况下我们是不进行比较的,因为两者的使用环境是不同的,在大部分情况下如果要进行方法的参数接收考虑使用“?”,它的特点是可以保证程序不出现不必要的修改。

Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题

因为泛型可以设置所有的类型,所以面对当前的开发环境就发现fun()方法将出现问题,也就是说如果Message使用的时候设置的不是String,那么就有可能无法使用。

Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题

对于泛型的应用除了可以在自定义类上使用,其它使用最多的环境可能就是反射机制了。

Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题

以上的工厂类只为一个IMessage接口服务,但是从实际的开发来讲,可能会有无数个借口对象都需要通过工厂类获得,在这样的情况下就可以利用泛型来解决问题。

Java常见面试题:泛型通配符问题
Java常见面试题:泛型通配符问题
如果所有的程序代码都这样编写实际上也会比较辛苦,在很多实际开发中,对于以上的代码有个基本的认识即可,毕竟有开发框架,开发框架里面帮助开发者隐藏了所有的实现细节。

更多专业知识,面试技巧就在阿里云开发者社区,持续更新中……
感谢浏览~
本内容来源于阿里云大学-Java面试技巧

上一篇:170道Java工程师面试题,你敢挑战吗?


下一篇:使用ECS服务器真实体验