|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/kurs-java-generics-i-kolekcje/
课程评论:没有评论
**Java 泛型与集合:深入导学** 此课程为Java开发之旅的第一站,专注于Java中的泛型(Generics)和集合(Collections)。课程旨在帮助学习者全面理解泛型的概念、工作原理及其在集合中的应用,并提供深入的实践练习。 **核心主题:** * **泛型基础:** 深入探讨Java泛型的本质,理解类型擦除机制。 * **泛型类:** 学习如何创建和使用能够处理多种数据类型的泛型类,同时保证类型安全。 * **泛型接口:** 掌握泛型接口的定义与实现,理解其在不同数据类型下的多态性。 * **泛型方法:** 学习如何编写可以在不同数据类型上操作的泛型方法,无需预先指定具体类型。 * **泛型的好处:** 通过对比分析,深刻理解泛型在提高代码健壮性、可读性和复用性方面的重要作用,以及若无泛型可能遇到的挑战。 * **通配符(Wildcards):** * **无界通配符(Unbounded Wildcards):** 学习其基本用法和通用场景。 * **上界通配符(Upper Bound Wildcard):** 理解如何限制泛型类型为特定类及其子类。 * **下界通配符(Lower Bound Wildcard):** 掌握如何限制泛型类型为特定类或其父类。 * **泛型实践:** 通过一些“奇怪”或不常见的泛型使用案例,加深对泛型机制的理解。 **集合深入:** * **比较(Comparing):** * **Comparable:** 学习如何实现Comparable接口,实现对象的自然排序。 * **Comparator:** 掌握如何创建Comparator接口的实现,实现自定义的排序逻辑。 * **集合概述:** 回顾集合的基本概念,为深入学习打下基础。 * **List 详解:** 深入剖析 `ArrayList`, `LinkedList` 等不同List实现。 * **Set 详解:** 学习 `HashSet`, `LinkedHashSet`, `TreeSet` 等Set集合的特性。 * **Map 详解:** 深入理解 `HashMap`, `LinkedHashMap`, `TreeMap` 等Map集合的工作原理。 * **Queue 详解:** 探讨 `ArrayDeque`, `Stack`, `PriorityQueue` 等队列结构。 * **集合中的Null处理:** 学习如何在不同集合类型中安全地处理`null`值。 * **Big O 记法:** 介绍Big O记法,用于分析算法的时间和空间复杂度。 **课程特色:** * **实战项目:** 课程的亮点在于最后的实践项目,学员将有机会将所学知识融会贯通,独立完成一个综合项目。 * **Java 11 支持:** 课程内容和测试均基于Java 11,推荐学员使用JDK 11以获得最佳学习体验,但也欢迎使用更新版本的JDK。 * **Zajavka 路径:** 本课程是“Zajavka”学习路径的开端,为后续更高级的学习奠定坚实基础。 本课程是提升Java泛型和集合技能的宝贵机会,通过理论讲解、实践练习和最终项目,学员将获得宝贵的编程经验,为未来的软件开发职业生涯打下坚实基础。
Z tego warsztatu dowiemy się, czym są typy generyczne w Javie oraz jak zachowuje się mechanizm określania typu, na jakim chcemy operować w danej klasie. Dowiemy się, jak można stosować typy generyczne na przykładzie różnych rodzajów kolekcji (Listy, Sety, Kolejki i Mapy). Do tego dowiemy się, jak można efektywnie określać, w jaki sposób chcemy posortować elementy w kolekcji. GenericsKlasy GeneryczneDowiesz się, jak tworzyć klasy generyczne, które mogą operować na różnych typach danych, zachowując jednocześnie bezpieczeństwo typów.Interfejsy GeneryczneNauczysz się, jak definiować interfejsy generyczne, które mogą być implementowane przez różne klasy pracujące z różnymi typami danych.Metody GeneryczneZrozumiesz, jak tworzyć metody generyczne, które mogą działać na różnorodnych typach danych bez konieczności ich wcześniejszego określania.A co by było, gdyby nie było generyków?Zastanowimy się nad korzyściami wynikającymi z używania generyków i jakie problemy mogłyby się pojawić, gdyby ich nie było.Unbounded WildcardsPoznasz użycie dzikich kart bez ograniczeń (unbounded wildcards) i ich zastosowanie.Upper Bound WildcardDowiesz się, jak ograniczyć typy do podklas za pomocą górnych ograniczeń (upper bound wildcard).Lower Bound WildcardZrozumiesz, jak stosować dolne ograniczenia (lower bound wildcard) dla generyków.Dziwne PrzykładyAnaliza nietypowych przypadków użycia generyków, które pomogą lepiej zrozumieć ich mechanizmy.ComparingWstępWprowadzenie do tematu porównywania elementów w kolekcjach.ComparatorNauczysz się, jak implementować interfejs Comparator do porównywania obiektów według określonych kryteriów.ComparableZrozumiesz, jak używać interfejsu Comparable do porównywania obiektów według naturalnego porządku.KolekcjePodsumowanie PodstawKrótkie przypomnienie podstawowych informacji o kolekcjach.ListySzczegółowe omówienie list: ArrayList, LinkedList i inne typy list.Podsumowanie z Bartkiem K.Podsumowanie tematu list z Bartkiem K.SetyOmówienie setów: HashSet, LinkedHashSet, TreeSet.MapySzczegółowe omówienie map: HashMap, LinkedHashMap, TreeMap.KolejkiOmówienie kolejek: ArrayDeque, Stack, PriorityQueue.Obsługa null w KolekcjachNauczysz się, jak zarządzać wartościami null w różnych typach kolekcji.Notacja BIG OWprowadzenie do notacji Big O, która służy do analizy złożoności czasowej i pamięciowej algorytmów.Projekt!Na zakończenie warsztatu uczestnicy zrealizują projekt, w którym wykorzystają zdobyte umiejętności i wiedzę z zakresu generyków oraz kolekcji w Javie.Warsztat #1 Java generics i kolekcje ze ścieżki ZajavkaTen warsztat został nagrany w Java 11. Testy w tym warsztacie również odnoszą się do Java 11. Ma to o tyle znaczenie, że jeżeli będziesz korzystać z nowszych wersji Java, to teoretycznie mogły tam nastąpić jakieś kosmetyczne zmiany. Dlatego dla spójności, zalecamy korzystanie z JDK 11, żeby Twoje przykłady zachowywały się tak jak na nagraniach, ale oczywiście możesz korzystać z nowszego JDK.Warsztat ten jest doskonałą okazją do pogłębienia wiedzy na temat typów generycznych i kolekcji w Javie. Dzięki praktycznym zadaniom, testom oraz projektowi końcowemu uczestnicy zdobędą cenne doświadczenie, które będzie przydatne w ich dalszej karierze programistycznej.Warsztat ten jest pierwszym warsztatem w ramach ścieżki Zajavka.