Skip to content

Umit-Soylu/Java-Training

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java-Training

This repository provides teaching materials for Java training.

Getting Started

Following issues are introduced step by step at each commit. Please use the links provided to see code examples of the aforementioned issue.

First Code

  • Hello World example for calling a java program from terminal.

Core Concepts of Java

Object Oriented Java

  • Classes & Objects A simple code for creating a class and and instantiating objects. (New keyword: static)
  • Object Oriented Concepts
    • Aggregation concepts introduced in the Aggregation Package. (Test classes are under here)
    • Inheritence concepts introduced in the Inheritance Package. (Test classes are under here) (New keywords: extends, and instanceof)
    • Polymorphism concepts introduced in the Polymorphism Package. (Test classes are under here) (New keywords: @Override, final, this, and super)
    • Abstraction concepts introduced in the Abstraction Package. (Test classes are under here) (New keywords: interface, abstract, and implements)

Common Java Classes

  • Enumeration class is introduced with example cases. (New keywords: enum, and ordinal)
  • String class is introduced with example cases. (New keywords: String, StringBuilder and StringBuffer)
  • Pattern and Matcher class is introduced with example cases. (New keywords: Pattern, Matcher, group, compile and regex)
  • Date and Calendar class is introduced with example cases. (New keywords: Date, before, after, getDisplayname, and Gregorian Calendar)

Advanced Concepts of Java

  • Collections is introduced with its application classes.
    • List concept and its application classes are in the Arrays & Lists Package. (Test classes are under here) (New keywords: Array, List, LinkedList and ArrayList)
    • Queue concept and its application classes are in the Queues Package. (Test classes are under here) (New keywords: Queue, ArrayQueue, PriorityQueue and Stack)
    • Set concept and its application classes are in the Sets Package. (Test classes are under here) (New keywords: Set, HashSet, and TreeSet)
    • Collections real world example cases can be found here.
  • Lambda is introduced. (New keywords: @FunctionalInterface, lambda, and runnable)
  • Streams is introduced with its application classes. (New keywords: Stream, foreach, filter, count, limit, IntStream, and much more)
  • File Input and Output is introduced with file interactions. (New keywords: File, FileOutputStream, FileInputStream, FileWriter, FileReader, BufferedReader, and much more)
  • Localization is introduced with file interactions. (New keywords: NumberFormat, DateTimeFormatter, and Locale)

Concurrency & Multithreading

  • Threads are introduced. (New Keywords: Thread, ThreadGroups, Priorities, start, run, and synchronized)
    • Thread Synchronization, multithreading, and concurrency is introduced via examples (New Keywords: ThreadFactory, sleep, wait, notify, and notifyAll)
      • Sleep vs Wait explained.
      • Object locks explained
      • Deadlock problem explained

JDBC

Frameworks

Hibernate

  • Hibernate is introduced. (New Keywords: Session Factory, Session, Transaction, and Annotations)

About

This is a source code for java tutorials

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages