2013-03-18 2 views
5

я получил следующий вопрос на Java интервью:Реальные примеры общего класса

  1. Не могли бы вы назвать некоторые общие примеры классов из реальной жизни? Не из реальной жизни ПРОГРАММИРОВАНИЯ, а в общем. Например. вы объясняете родословные человеку, который ничего не знает о программировании.

  2. То же самое о самом простом дизайне - одиночный.

Я имею знаю ни малейшего представления, о первом вопросе (о дженериков), я попытался назвать различные ручные инструменты (например, лобзиком), которые работают только с одним типом материала, но это не генерики на самом деле.

Пожалуйста, избегайте подобных коллекций предложений, это слишком наивно и очевидно.

+8

Диктаторы - довольно хороший синглтон. У вас может быть только одна страна, и в целом это плохая практика. :) – Mat

ответ

0

Чаша чего-то всегда является хорошим примером.

Bowl<T> can be Bowl<Cookie> Bowl<Candy> .... 
+0

Итак, вы не можете положить конфетку в чашу с печеньем? – bsiamionau

+1

Вы могли бы, но представить себе полку, наполненную чашами. Каждая чаша одинакова (размер, форма и т. Д.) И обрабатывается таким же образом (поставьте sth. In, возьмите верхний элемент из него). Но они помечены как Cookie, Candy и т. Д. Вы хотите быть уверены, что если вы возьмете sth. из чашки Куки, это действительно Печенье - и не конфета. В этом сценарии вы не хотели бы иметь конфету в чаше печенья, хотя вы могли бы там технически разместить ее. Generics предлагает вам, что «typesafety». – Pyranja

7
  1. Я хочу, чтобы открыть зоомагазин, я не волнует, что другой тип животных они, но, черт побери, я хочу зоомагазин. Я хочу котят, черепах и пауков. Я хочу быть в состоянии подсчитать их, найти, сколько животных у меня есть, и заказать их как таковые. Я не хочу бросать то, что моя черепаха - черепаха, я знаю, что это черепаха.

  2. Существует только один банковский счет в магазине, у меня никогда не будет более одного, где когда-либо кто-либо заказывает меня, будь то онлайн или по почте, есть только один банковский счет в магазине. Никогда не может быть другого, независимо от того, откуда мой магазин.

0

Так что я хочу купить телевизор. Я просматриваю List<TV>. Но потом я решил, что хочу получить ЖК-телевизор. Итак, я instanceof через список и получаю List<LCD_TV>. Так как я хочу телекомпанию компании, я вызываю аннотация TV.getManufacturer() и проверяю, == company. Тогда я знаю, что мне нужен светодиодный индикатор, поэтому я звоню LCD_TV.getLcdType() и проверяю, == LED. Тогда я просто выбираю случайным образом list.get(rand() % list.size())

Смежные вопросы