Skip to content

Latest commit

 

History

History
117 lines (108 loc) · 3.45 KB

File metadata and controls

117 lines (108 loc) · 3.45 KB

Week 1 Java Topics

  • Java Features

  • Object Oriented Programming

    • Polymorphism
      • Dynamic Binding
      • Overloading
      • Overriding
    • Encapsulation
      • Access Modifiers
    • Inheritance
      • extends
    • Abstraction
      • Interfaces
      • Abstract Classes
  • Tools

    • JVM
      • JRE vs JDK
      • Stack vs Heap
      • public static void main(String[] args)
    • Git
      • Commands: add, push, pull, commit, clone
    • Gradle
      • Build Scripts
  • Syntax

    • Constructors, Methods, and Fields
    • Variable Scopes
      • class/static
      • instance/object
      • method/parameter
      • local/block
    • Control Statements: If, If Else, Else, While, Do-While, For, For-each, Switch
    • Arrays, varargs
    • Package & Import
    • Access Modfiers
    • Primitive Types: byte, short, int, long, char, boolean, float, double
    • Reference Types: class, enum, interface, array
    • Exception Handling
      • try/catch/finally
      • try-with-resources
      • Checked vs Unchecked Exceptions
    • Method Overloading and Overriding
    • Interfaces
      • Functional & Marker Interfaces
      • Default fields & methods
    • Abstract Class
    • Anonymous Class
    • Lambdas
    • Generics
  • Standard Library

    • Object API
      • toString()
      • hashcode()
      • equals()
    • String API
      • String immutability
      • StringBuilder vs StringBuffer
      • String Pool
    • Wrapper Classes
    • Reflection API
    • IO
      • System.out.println()
      • Scanner
    • Serialization
    • Collection API
      • collection vs. Collection vs. Collections
      • Map
        • Hashtable
        • HashMap
      • List, Set, Queue, Deque
        • ArrayList, TreeSet
      • Iterable vs Iterator
      • Comparable vs Comparator
    • Thread API
      • Runnable interface vs Thread class
      • Synchronized
      • States of Threads
      • Thread Methods
      • Deadlock/Starvation
      • Producer/Consumer Problem
  • Paired Programming

    • Roles
    • Process
    • Benefits
  • Testing

    • Levels of Testing
      • Unit Tests
      • Integration Tests
      • System Tests
      • Acceptance Tests
    • TDD
      • Red/Green Testing
    • JUnit
      • Assert Methods
      • Annotations
    • Mockito
      • Mock Objects
  • Design patterns

    • Singleton
    • Factory
  • OWASP

    • OWASP Top 10
    • Insufficient Logging & Monitoring