Презентация Generics. (Lecture 7. 3) онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Generics. (Lecture 7. 3) абсолютно бесплатно. Урок-презентация на эту тему содержит всего 42 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    42 слайда
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    125.35 kB
  • Просмотров:
    61
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Generics
Содержание слайда: Generics

№2 слайд
Содержание слайда:

№3 слайд
Содержание слайда:

№4 слайд
Содержание слайда:

№5 слайд
Содержание слайда:

№6 слайд
Содержание слайда:

№7 слайд
Generic Types and Methods
Содержание слайда: Generic Types and Methods There can be: Generic classes Generic interfaces Generic methods Bounded generic types Generic wildcards

№8 слайд
Содержание слайда:

№9 слайд
Type erasure Java generics
Содержание слайда: Type erasure Java generics are implemented using type erasure. This means that any specific type information is erased when you compile your code.

№10 слайд
Содержание слайда:

№11 слайд
Содержание слайда:

№12 слайд
Содержание слайда:

№13 слайд
Содержание слайда:

№14 слайд
Содержание слайда:

№15 слайд
Содержание слайда:

№16 слайд
Содержание слайда:

№17 слайд
Содержание слайда:

№18 слайд
Содержание слайда:

№19 слайд
Содержание слайда:

№20 слайд
Содержание слайда:

№21 слайд
Содержание слайда:

№22 слайд
Содержание слайда:

№23 слайд
Содержание слайда:

№24 слайд
Why Polymorphism doesn t work
Содержание слайда: Why Polymorphism doesn’t work class Holder<T> {   T[] items; int num = 0;   void add(T item) { this.items[num++] = item;}   T[] get() { return items; } } ... Holder<Integer> h = new Holder<Integer>(); h.add(1); h.add(2); Holder<Number> reg = h; h.add(new Double(1.25)); Integer i3 = h.get()[2] So Double is a Number but Holder<Double> is not Holder<Number>

№25 слайд
But you can do this This is
Содержание слайда: But you can do this: This is how you can put different object types in parameterized Holder object: Holder<Number> h = new Holder<Number>(); h.add(1); h.add(2); h.add(new Double(1.25)); Number i3 = h.get()[2]

№26 слайд
Содержание слайда:

№27 слайд
Generic Wildcards ? The
Содержание слайда: Generic Wildcards (?) The wildcard provides a polymorphic - like behavior for declaring generics. <?> , an unbounded wildcard <? extends type> , a wildcard with an upper bound <? super type> , a wildcard with a lower bound

№28 слайд
Unbounded Wildcards The
Содержание слайда: Unbounded Wildcards The unbounded wildcard represents any data type, similar to the < T > syntax. public static void printList(List<?> list) { for(Object x : list) { System.out.println(x.toString()); } } ... ArrayList<String> keywords = new ArrayList<String>(); kyewords.add(“generic”); printList(keywords); Use the ? in situations where you do not need a formal parameter type like < T >

№29 слайд
Be careful Holder lt ? gt h
Содержание слайда: Be careful Holder<?> h = new Holder<String>(); h.add(new Object()); // compile time error h.add(new String()); // compile time error // one exception! h.add(null); // null is member of every type Working with unbounded wildcards we can only read data, not assign!

№30 слайд
Upper - Bound Wildcards
Содержание слайда: Upper - Bound Wildcards Bounded wildcards put some restrictions on unknown type: public static void printList(List<? extends Number> list){ for(Number x : list) { System.out.println(x.doubleValue()); } list.add(new Integer(3)); // compile error }

№31 слайд
Содержание слайда:

№32 слайд
Lower Bounded Wildcards a
Содержание слайда: Lower Bounded Wildcards a lower bounded wildcard restricts the unknown type to be a specific type or a super type of that type Holder<? super Integer> h = new Holder<Integer>(); h.add(new Integer(1)); Integer i1 = h.get(); // compilation error // get returns Object Integer i2 = (Integer)h.get(); // OK Lower bounded wildcards allow to modify but not read!!

№33 слайд
Example public static void
Содержание слайда: Example public static void addNumbers(List<? super Integer> list) { for (int i = 1; i <= 10; i++) { list.add(i); } } List<Integer> i = new ArrayList<Integer>(); List<Number> n = new ArrayList<Number>(); List<Object> o = new ArrayList<Object>(); addNumbers(i); addNumbers(n); addNumbers(o); This works fine

№34 слайд
Содержание слайда:

№35 слайд
Содержание слайда:

№36 слайд
Содержание слайда:

№37 слайд
Содержание слайда:

№38 слайд
Содержание слайда:

№39 слайд
Содержание слайда:

№40 слайд
Naming Conventions for
Содержание слайда: Naming Conventions for Generics E for an element K for a map key V for a map value N for a number T for a generic data type Use S , U , V , and so on for multiple types in the same class.

№41 слайд
Содержание слайда:

№42 слайд
Содержание слайда:

Скачать все slide презентации Generics. (Lecture 7. 3) одним архивом: