在Java面试中,我遇到了以下问题:
你能否举出一些现实生活中的泛型类示例?不是来自于真正的编程生活,而是普通生活中的。例如,你正在向一个对编程一无所知的人解释泛型。
关于最简单的设计模式——单例模式,同样的问题。
对于第一个问题(关于泛型),我并没有什么想法。我尝试提到了不同的手工工具(如挽锯),它们只能处理一种类型的材料,但这并不是真正的泛型。
请避免像集合一样的建议,这太幼稚和显而易见了。
在Java面试中,我遇到了以下问题:
你能否举出一些现实生活中的泛型类示例?不是来自于真正的编程生活,而是普通生活中的。例如,你正在向一个对编程一无所知的人解释泛型。
关于最简单的设计模式——单例模式,同样的问题。
对于第一个问题(关于泛型),我并没有什么想法。我尝试提到了不同的手工工具(如挽锯),它们只能处理一种类型的材料,但这并不是真正的泛型。
请避免像集合一样的建议,这太幼稚和显而易见了。
我想要开一家宠物店,无论是什么不同类型的宠物,但我必须要有一家宠物店。我想要小猫,乌龟和蜘蛛。我想要能够计算它们的数量,并且按此排序。我不想被迫将我的乌龟标记为乌龟,因为我知道它是一只乌龟。
只有一个商店银行账户,无论客户是在线下单还是邮寄订单,都只会使用这一个商店银行账户进行支付。无论从哪个地方访问我的商店,都不会再有其他银行账户。
一碗东西总是一个很好的例子。
Bowl<T> can be Bowl<Cookie> Bowl<Candy> ....
所以我想买一台电视。我正在查看一个 List<TV>
。但是后来我决定要买一台液晶电视。所以我通过列表进行 instanceof
操作,得到了 List<LCD_TV>
。由于我想要一台公司的电视,所以我调用抽象方法 TV.getManufacturer()
并检查它是否等于公司。然后我知道我想要一台 LED 背光的液晶电视,所以我调用 LCD_TV.getLcdType()
并检查它是否等于 LED。然后我只需随机选择 list.get( rand() % list.size() )
。