我在Java采访中得到了下一个问题:
您能说出现实生活中的一些通用课程示例吗?不是来自真正的PROGRAMMING生活,而是共同的。例如。你正在向人们解释泛型,他对编程一无所知。
最简单的设计模式 - 单身。
我知道任何想法,关于第一个问题(关于泛型),我试图命名不同的手工工具(如fretsaw),它只使用一种类型的材料,但它实际上不是泛型。
请避免像收集一样的建议,这太天真和明显。
答案 0 :(得分:7)
我想开一家宠物店,我不在乎他们有什么不同类型的宠物但是我想要一家宠物店。我想要小猫,乌龟和蜘蛛。我希望能够统计它们,找到我有多少动物并按此命令它们。我不想把我的乌龟当作乌龟,我知道它是一只乌龟。
只有一个商店银行账户,我永远不会超过一个,无论有人从我这里订购,无论是在线还是邮寄,只有一个商店银行账户。无论从哪里访问我的商店,都不可能有另一个。
答案 1 :(得分:0)
一碗东西总是一个很好的例子。
Bowl<T> can be Bowl<Cookie> Bowl<Candy> ....
答案 2 :(得分:0)
所以我想买一台电视。我正在查看List<TV>
。但后来我决定要买一台液晶电视。所以我instanceof
通过列表获取List<LCD_TV>
。由于我想要公司电视,我称之为摘要TV.getManufacturer()
并检查它是否== company
。然后我知道我想要一个LED点亮的LCD,所以我打电话给LCD_TV.getLcdType()
并检查它是否== LED
。然后我只是随机选择list.get( rand() % list.size() )