Saturday, 27 February 2016

Complete List of Core Java Topics




  • Core Java

    • History and Introduction of Java
    • Java Features
    • Comparison with C and C++
    • JDK, JRE, JVM, JIT
    • Installation
      • Java
      • Java Editor
      • Eclipse IDE
    • Environment variable setup
      • JAVA_HOME
      • classpath
    • Basic Program - Hello Java!
      • Command Line
      • Java Editor
      • Eclipse IDE
    • Comments
      • Single Line
      • Multi Line
    • Java Identifiers
    • Java Keywords
    • Java Naming Conventions
    • Datatypes
      • Primitive Data Types ( Range, Size & Default Value)
      • Reference/Object Data Types
    • Java Literals
    • Commands
      • javac
      • java
      • javap
      • javapackager
      • javaws
      • jconsole
      • jmap
      • jhat
      • jinfo
      • javadoc
    • Object, Class and Package
    • Variable
      • Local Variables
      • Class Variables (Static Variables)
      • Instance Variables (Non-Static Variables)
    • Unicode System
    • Escape Sequence Characters
    • Fields
    • Methods
    • Casting
      • Implicit/Explicit
      • Up-casting/Down-casting
    • Operators
      • Assignment
      • Relational
      • Arithmetic
      • Conditional
      • Logical
      • Bitwise
      • instanceof
    • Operator Precedence
    • Operator Associativity
    • Control Statements
      • Selection/Decision-Making Statement
        • if
        • if-else
        • if-elseif-else
        • switch
      • Loop/Iteration Statement
        • for
        • while
        • do-while
        • for-each
      • Branching/Jump Statement
        • break
          • labelled break
        • continue
          • labelled continue
        • return
      • Command Line Arguments
      • Array
      • Var-Args
      • Enum Data Type
      • Modifiers
        • Access Modifiers
        • Non-Access Modifiers
      • OOPS Concepts and their implementation in Java
        • Association
        • Aggregation
        • Abstraction
        • Encapsulation
        • Polymorphism
          • Compile time
          • Runtime
        • Inheritance
      • Relationship
        • IS-A
        • HAS-A
      • Cohesion
      • Coupling
      • Constructor
        • Default Constructor
        • Parameterized Constructor
        • Constructor Overloading
        • Constructor Chaining
      • Wrapper Classes
      • Auto-Boxing ( Boxing, Un-Boxing)
      • Initializer Block
        • Instance Initializer Block
        • Static Initializer Block
        • Order of Execution
      • Inheritance
        • Single Level
        • Multilevel
        • Hierarchical
        • Multiple (not supported by Java)
        • Hybrid ( not supported because this is one of the type of Multiple Inheritance) 
      • Overloading and its rules
      • Overriding and its rules
        • Covariant Return Type
      • Keywords
        • this
          • refer current class instance variable in constructor
          • invoke current class constructor
          • invoke current class method
          • this keyword as an argument in method
          • this keyword as an argument in object creation
          • used to return current class instance
        • abstract
          • Abstract Classes
          • Abstract Methods
        • super
          • super is used to refer immediate parent class instance variable.
          • super() is used to invoke immediate parent class constructor.
          • super is used to invoke immediate parent class method.
        • final
          • Final Variable
          • Final Method
          • Final Class
        • static
          • Static Variable
          • Static Method
          • Static Import
        • volatile
        • transient
        • strictfp
        • extends
          • extends for class
          • extends for interface
        • implements
        • import
      • Interfaces
        • Functional Interfaces (New in Java 8)
        • Marker Interfaces
        • interface v/s abstract class
      • Concrete Class
      • POJO Class
      • Constructor concept for abstract class and interface
      • String Handling
        • String Pool
        • String Class
        • StringBuffer Class
        • StringBuilder Class
        • CharSequence
        • StringTokenizer
      • Assertion
      • Thread & Concurrency
        • Defining, Instantiating and Starting threads
        • Thread States
        • Thread Properties
        • Thread Priorities
        • Interrupting Threads
        • Multi-Threading
        • Using Thread Dump
        • Locks
        • Deadlock
        • Inter-Thread Communication
        • Worker Thread
        • Daemon Thread
        • join() method
        • wait(), notify(), notifyAll() methods
        • sleep() method
        • Synchronization (block & Method)
        • Concurrent API (java.util.concurrent)
        • Blocking Queue
        • Thread Pool
        • Thread Safe collection
        • Callables and Futures
        • Fork/Join
        • Executor
        • Synchronizers
      • Exception
        • Exception Hierarchy
        • Compile-time and Runtime Exception
        • Checked and Unchecked 
        • try, catch, finally, throw, throws
        • try with resources (new in Java 7)
        • multi-catch (new in Java 7)
        • Exception overriding
        • User Defined Exception
        • JVM thrown exception
        • Programmatically thrown exception
      • Nested Classes
        • Static Nested Class
        • Inner Classes
        • Regular Inner Class
        • Method Local Inner Class
        • Anonymous Inner Class
      • Serialization and Deserialization
      • Important Package
        • java.lang
        • java.util
        • java.math
      • Object class and its methods
      • Regular Expressions
      • Collection
        • hashCode() and equals()
        • Iterator and ListIterator
        • Enumeration
        • List
          • ArrayList
          • Vector
          • LinkedList
          • Stack
        • Set
          • HashSet
          • LinkedHashSet
          • TreeSet
          • SortedSet
          • NavigableSet
          • EnumSet
        • Map
          • HashMap
          • Hashtable
          • TreeMap
          • LinkedHashMap
          • SortedMap
          • NavigableMap
        • Queue
          • PriorityQueue
          • Deque
          • ArrayDeque
        • Utility Classes
          • Collections
          • Arrays
        • Ordered and Sorted Collections
        • Comparator and Comparable interfaces
        • Properties class
        • fail-fast and fail-safe properties
        • Diamond Syntax (new in Java 7)
        • Backed Collection
        • Thread Safe Collection
          • CopyOnWriteArrayList
          • ConcurrentHashMap
          • CopyOnWriteArraySet
        • Synchronized Wrappers
        • Unmodifiable wrappers
        • Collection Related Exception ( i.e. ConcurrentModificationException )
      • Cloning
      • Reflection
      • Class Loaders
      • I/O and NIO API
      • RMI
      • Generics
      • Data Formatting
        • Date and Calender classes
        • Numbers and Currencies
        • Parsing
        • Tokenizing
        • Formatting
      • Internationalization and Localization
        • Resource Bundles
        • Annotations
        • Memory Management
          • Garbage Collection
          • Heap Size
          • Stack Size
          • Java Start-up Args
        • JDBC
        • GUI - Swing, AWT, Applet
        • Design Patterns
          • Creational Design Pattern
            • Factory Pattern
            • Abstract Factory Pattern
            • Singleton Pattern
            • Prototype Pattern
            • Builder Pattern
          • Structural Design Pattern
            • Adapter Pattern
            • Bridge Pattern
            • Composite Pattern
            • Decorator Pattern
            • Facade Pattern
            • Flyweight Pattern
            • Proxy Pattern
          • Behavioral Design Pattern
            • Chain Of Responsibility Pattern
            • Command Pattern
            • Interpreter Pattern
            • Iterator Pattern
            • Mediator Pattern
            • Memento Pattern
            • Observer Pattern
            • State Pattern
            • Strategy Pattern
            • Template Pattern
            • Visitor Pattern
        • Lambda Expressions (new in Java 8)
        • Different ways to create Java Objects
        • New major features in each Java release
          • Java 4
            • Assertion
          • Java 5
            • for-each loop
            • varargs
            • static import
            • Autoboxing and Unboxing
            • Enums
            • Covariant return type
            • Annotation
            • Generics
          • Java 6
            • JDBC 4.0
            • Rhino (Java Script Engine)
            • Console class
          • Java 7
            • Diamond Operator
            • Using String in switch statement
            • Automatic Resource Management
            • Numeric literals with underscores
            • Multi-catch feature
            • New File API (NIO2.0)
              • Working with path
              • File change notification
            • Fork and Join
            • Supporting Dynamism
              • invokedynamic
              • java.lang.invoke
          • Java 8
            • Lambda Expressions
            • Stream Collection Types (java.util.stream)
            • Functional Interface (java.util.function)
            • Nashorn - node.js on JVM
            • Date/Time Changes (java.time)
            • Type annotation
            • Default Methods

        15 comments:

        1. Helpful. Its always difficult to start and also from where to start. This list will really help for that motivation.

          ReplyDelete
        2. Covered almost all the core topics of java. Definitely it will helps everyone. Thank you very much.

          ReplyDelete
        3. It's Really nice article. Thanks share

          ReplyDelete
        4. Khushboo Parmar3 March 2016 at 10:14

          Thank you so much for this. Really appreciate..!!

          ReplyDelete
        5. Thank you very much for this much appreciated..

          ReplyDelete
        6. Hi,

          First of all thanks for sharing all these items,It is very help full every body.I just want to add "Design patterns" are missing in this post.Please add the same.

          ReplyDelete
          Replies
          1. Thank you Srikanth. I will add Design Pattern part soon.

            Delete
        7. Hi Sachin, thanks for this useful list of topics. Can you suggest some books/online material where I can cover these topics?

          ReplyDelete
          Replies
          1. no book/online tutorial have all topics in their course but you can google each topic and learn online topic by topic.

            Delete
        8. perfect explanation about java programming .its very useful.thanks for your valuable information.java training in chennai | java training in velachery

          ReplyDelete
        9. This comment has been removed by the author.

          ReplyDelete
        10. Thanks for your informative blog!!! Your article helped me to understand the future of Core Java programming language. Keep on updating your with such awesome information.


          Core Java Online Training

          ReplyDelete

        Hi,

        Thanks for coming here. I hope this information helps you for preparing Java Interview.

        Br,
        Sachin Singh