Java Programming 2

Kurskod A381

Java Programming 2

Modern Java-kod sträcker sig långt bortom objektorientering och dess tillhörande principer. Den här praktiska kursen, som genomförs med Java 17, syftar till att ge en grund i avancerade ämnen som generics, funktionell programmering, concurrency, annotationer, reflektion och säkerhet (bland andra).

 

Pris
37950 kr (exklusive moms)
Längd
5 dagar
Ort och startdatum
3 feb
Live Online
24 mar
Live Online
12 maj
Live Online
30 jun
Live Online
18 aug
Live Online

Boka utbildning

Utbildningen lyfter dig till nästa nivå i Java med praktiska kunskaper om de delar av Javas programspråk och standardbibliotek som ligger till grund för modern utveckling i Java.

Kursen är utformad för att noggrant följa den officiella Oracle Java-läroplanen för certifiering. Övningar och exempel används genomgående i kursen för att ge praktisk erfarenhet av de tekniker som täcks.


Målgrupp och förkunskaper

Kursen riktar sig till till befintliga Java-utvecklare som vill bygga vidare på sin grundläggande kunskap för att kunna utnyttja språkets avancerade funktioner fullt ut.

Du behöver förkunskaper i Java motsvarande kursen Java Programming 1 samt praktisk erfarenhet av programmering i Java.

För att alltid hålla en hög kvalitet på våra teknikkurser använder vi både engelsk- och svensktalande experter som kursledare.

Certifieringar

Den här kursen är lämplig om du vill förbereda dig för certifieringstestet Oracle Certified Professional (OCP) Java SE 8 Programmer II: 1Z0-809.  Tillsammans med kursen Java Programming 1 är kursen ett bra val om du förbereder dig antingen för certifieringen Oracle Certified Professional (OCP) Java SE 11 Developer: 1Z0-819 eller för Oracle Certified Professional (OCP) Java SE 17 Developer: 1Z0-829.

Certifieringstest ingår inte i kursen.

Detaljerad information


Kursmaterialet är på engelska, med följande innehåll:

Session 1: GENERICS
  • Generic types
  • Generic methods
  • Bounded type parameters
  • Generics and inheritance
  • Type inference
  • Wildcards
  • Type erasure
  • Restrictions
Session 2: COLLECTIONS
  • The Collection interface hierarchy
  • Iterable and Iterator
  • Collection operations and traversal
  • The Collections class
  • Collection types (characteristics and implementations) incl. List, Set and Queue
  • The Map interface hierarchy
  • Map operations and traversal
  • Map types (characteristics and implementations)
Session 3: hashCode, equals & compareTo/compare
  • The Object class
  • Overriding toString
  • Equality and membership testing
  • Hashing collections
  • Overriding hashCode and equals
  • The Comparable and Comparator interfaces
  • Searching and sorting
  • Overriding compareTo and compare
Session 4: NESTED CLASSES
  • Static nested classes
  • Inner classes
  • Shadowing
  • Local classes
  • Anonymous classes
  • Variable capture and effectively final
Session 5: LAMBDA EXPRESSIONS & METHOD REFERENCES
  • What is a lambda expression?
  • Lambda use case: collection filter
  • Lambda syntax
  • What is a method reference?
  • Method reference use case: collection sort
  • Method reference types x 4
Session 6: FUNCTIONAL PROGRAMMING
  • What is functional programming?
  • Functions as first class objects
  • Pure functions
  • Higher order functions
  • Immutable objects
  • Java's functional interfaces
  • Functional composition
Session 7: STREAMS
  • What is a stream?
  • Obtaining/creating a stream
  • Intermediate (non-terminal) operations
  • Terminal operations
  • The Optional class
  • The Collectors class
  • Stream concatenation
  • Primitive streams
Session 8: EXCEPTIONS, ASSERTIONS & LOCALISATION
  • Exceptions (a review)
  • Custom exceptions
  • Try with resources
  • Assertions
  • Dates and times
  • Internationalisation and localisation
  • Resource bundles
Session 9: MODULAR APPLICATIONS
  • Modules (a review)
  • Module types
  • Analysing dependencies
  • Migrating an existing application
  • Creating a service
Session 10: CONCURRENCY
  • Low-level threading incl. Runnable, sleep, join
  • The Java memory model
  • Threading problems incl. race conditions, deadlock, and starvation
  • Immutable objects and ThreadLocal
  • Thread synchronization incl. volatile, synchronized, atomic data types, and locks
Session 10 (Continued): CONCURRENCY
  • ExecutorService, thread pools, Callable, and Future
  • Concurrent and immutable collections
  • Parallel streams
Session 11: I/O
  • Files and directories
  • I/O streams
  • Common operations
  • Binary data, character data, and serialisation
  • Console I/O
Session 12: NIO.2
  • What is NIO?
  • Paths
  • Manipulating the filesystem
  • File attributes
  • Listing, traversing, and searching a directory
Session 13: ANNOTATIONS
  • What is an annotation?
  • Form and application
  • Standard annotations
  • Declaring an annotation
Session 14: REFLECTION
  • What is reflection?
  • Modules, classes, constructors, fields, and methods
  • Private members
  • Annotations
  • Generics and arrays
  • Dynamic proxies
  • Dynamic class loading
Session 15: SECURITY
  • Securing objects
  • Injection and input validation
  • Handling confidential information
  • Serialising and deserialising objects
  • Sensitive objects
  • Preventing denial of service attacks

Fler kurser inom

Få inspiration & nyheter från oss

Jag godkänner att Cornerstone skickar mig nyheter via e-post