Table of Contents
Welcome to Core Java Tutorial. I have written a lot on Core Java and Java EE frameworks. There was no index post for Core Java tutorial and I used to get emails asking to make one so that any beginner can follow them and learn core java programming. Finally, I got time and here I am listing all the core java tutorial related posts that I think will help you in learning core java in no time. This list is updated till Java-10 and soon it will be updated with the latest changes in Java-11 and beyond.
Core Java Tutorial
!core java tutorial These core java tutorial assume that you have some basic knowledge of programming. These core java tutorial posts are not for someone who doesn't know if-else blocks or for-loop etc. So why waste any more time, just read them in the below order and learn core java programming. If you think you know all about Java, just scroll below and read tutorials in "Advanced Topics" section, I am sure you will find something worth reading.
Core Java Tutorial - Getting Started
- [Setting up Java in Windows OS](/community/tutorials/java-windows-10-download-install)
- [Writing your First Java Program](/community/tutorials/java-hello-world-program)
- [Java Method](/community/tutorials/java-method)
- [Constructor in Java](/community/tutorials/constructor-in-java)
- [Java Access Modifiers – public, protected, private and default](/community/tutorials/java-access-modifiers)
- [Java for loop](/community/tutorials/java-for-loop)
- [Java while loop](/community/tutorials/java-while-loop)
- [Java do while loop](/community/tutorials/java-do-while-loop)
- [Java static keyword](/community/tutorials/static-keyword-in-java)
- [Java break keyword](/community/tutorials/java-break-statement-label)
- [Java continue keyword](/community/tutorials/java-continue-statement)
Core Java Tutorial - Object Oriented Concepts
- [OOPS Concepts](/community/tutorials/oops-concepts-java-example)
- [Composition in Java](/community/tutorials/composition-in-java-example)
- [Inheritance in Java](/community/tutorials/inheritance-java-example)
- [Composition vs Inheritance in Java](/community/tutorials/multiple-inheritance-in-java)
- [Java Nested Classes](/community/tutorials/java-inner-class)
Core Java Tutorial - Data Types and Operators
- [Java Data Types, Primitives and Binary Literals](/community/tutorials/java-data-types-primitives-and-binary-literals)
- [Java Autoboxing and Unboxing](/community/tutorials/autoboxing-java)
- [Java Wrapper Classes](/community/tutorials/wrapper-class-in-java)
- [Java Ternary Operator](/community/tutorials/java-ternary-operator)
Core Java Tutorial - Interface, Abstract Class
- [Abstract Class in Java](/community/tutorials/abstract-class-in-java)
- [Interface in Java](/community/tutorials/interface-in-java)
- [Difference between Abstract Class and Interface in Java](/community/tutorials/difference-between-abstract-class-and-interface-in-java)
Core Java Tutorial - String Manipulation
- [Why String is immutable and final?](/community/tutorials/string-immutable-final-java)
- [Understanding Java String Pool](/community/tutorials/what-is-java-string-pool)
- [Java String subsequence example](/community/tutorials/java-string-subsequence)
- [Java String compareTo example](/community/tutorials/java-string-compareto)
- [Java String substring example](/community/tutorials/java-string-substring)
- [Converting String to char and vice versa](/community/tutorials/string-char-array-java)
- [Java Split String example](/community/tutorials/java-string-split)
- [String to byte array and vice versa](/community/tutorials/string-byte-array-java)
- [String to char array](/community/tutorials/string-to-char-array-to-string-java)
- [Java String concatenation](/community/tutorials/string-concatenation-in-java)
- [String, StringBuffer and StringBuilder in Java](/community/tutorials/string-vs-stringbuffer-vs-stringbuilder)
- [String Programs in Java](/community/tutorials/string-programs-in-java)
Core Java Tutorial - Arrays
- [Initializing an Array in Java](/community/tutorials/initialize-array-java)
- [Two dimensional array in java](/community/tutorials/two-dimensional-array-java)
- [Java Array of ArrayList](/community/tutorials/java-array-of-arraylist-of-array)
- [String to String Array Example](/community/tutorials/string-to-array-java)
- [Java Variable Arguments Explained](/community/tutorials/java-varargs)
- [Java Array add elements](/community/tutorials/java-array-add-elements)
- [Sorting an Array in Java](/community/tutorials/sort-array-java)
- [Java String Array to String](/community/tutorials/java-string-array-to-string)
- [Java ArrayList to Array](/community/tutorials/java-arraylist-to-array)
- [Converting Array to ArrayList in Java](/community/tutorials/java-array-to-list-arraylist)
- [How to copy arrays in Java](/community/tutorials/java-copy-array-array-copy-java)
Core Java Tutorial - Annotation and Enum
- [Java Annotations Tutorial](/community/tutorials/java-annotations)
- [Java @Override Annotation](/community/tutorials/java-override-method-overriding)
- [Java Enum Example Tutorial](/community/tutorials/java-enum)
Core Java Tutorial - Collection & Generics
- [Java Collections Framework Tutorial](/community/tutorials/collections-in-java-tutorial)
- [Java List](/community/tutorials/java-list)
- [Java ArrayList](/community/tutorials/java-arraylist)
- [Java LinkedList](/community/tutorials/java-linkedlist-linkedlist-java)
- [Java Set](/community/tutorials/java-set)
- [Java HashSet](/community/tutorials/java-hashset)
- [Java TreeSet](/community/tutorials/java-treeset)
- [Java Map](/community/tutorials/java-map)
- [Java HashMap](/community/tutorials/java-hashmap)
- [Java SortedMap](/community/tutorials/java-sortedmap-sorted-map-java)
- [Java TreeMap](/community/tutorials/java-treemap-treemap-in-java)
- [Java Queue](/community/tutorials/java-queue)
- [Java Stack](/community/tutorials/java-stack)
- [Java Iterator](/community/tutorials/java-iterator)
- [Java ListIterator](/community/tutorials/java-listiterator)
- [Java PriorityQueue Example](/community/tutorials/java-priority-queue-priorityqueue-example)
- [Priority Queue Java](/community/tutorials/priority-queue-java)
- [ArrayList vs CopyOnWriteArrayList](/community/tutorials/copyonwritearraylist-java)
- [How to avoid ConcurrentModificationException when using an Iterator](/community/tutorials/java-util-concurrentmodificationexception)
- [Java Generics Example Tutorial](/community/tutorials/java-generics-example-method-class-interface)
Core Java Tutorial - IO Operations
- [Create a New File in Java](/community/tutorials/java-create-new-file)
- [Delete a File in Java](/community/tutorials/java-delete-file-directory)
- [File separators in Java](/community/tutorials/java-file-separator-separatorchar-pathseparator-pathseparatorchar)
- [Delete a Directory Recursively in Java](/community/tutorials/java-delete-directory-folder)
- [Rename and Move a File in Java](/community/tutorials/java-rename-file-jave-move-file)
- [Getting File Size in Java](/community/tutorials/java-get-file-size)
- [Get File Extension in Java](/community/tutorials/java-get-file-extension)
- [How to check if File exists in Java](/community/tutorials/java-check-if-file-exists)
- [How to check if File is a Directory in Java](/community/tutorials/check-file-directory-file-java)
- [How to get File last modified date in Java](/community/tutorials/get-file-last-modified-date-time-java)
- [Java FileNameFilter example to list specific files](/community/tutorials/java-filenamefilter-example)
- [Java File Path, Absolute Path and Canonical Path Explained](/community/tutorials/java-file-path-absolute-canonical)
- [How to set File Permissions in Java](/community/tutorials/java-file-permissions)
- [4 ways to copy File in Java](/community/tutorials/java-copy-file)
- [Reading File in Java using BufferedReader, Scanner, Files](/community/tutorials/java-read-text-file)
- [Java Scanner Class](/community/tutorials/scanner-class-in-java)
- [Open a File in Java](/community/tutorials/java-open-file)
- [Read a File to String in Java](/community/tutorials/java-read-file-to-string)
- [Java Read file line by line](/community/tutorials/java-read-file-line-by-line)
- [How to write a File in Java](/community/tutorials/java-write-to-file)
- [How to append data to a File in Java](/community/tutorials/java-append-to-file)
- [Converting InputStream to File](/community/tutorials/java-inputstream-to-file-example)
- [Java Random Access File Example](/community/tutorials/java-randomaccessfile-example)
- [Download File from URL Example](/community/tutorials/java-download-file-url)
- [Java GZip Example](/community/tutorials/java-gzip-example-compress-decompress-file)
- [Temp Files in Java](/community/tutorials/java-temp-file)
- [Reading a CSV File using Java Scanner Class](/community/tutorials/read-csv-file-java-scanner)
- [Java Property File Example](/community/tutorials/java-properties-file-java-util-properties)
Core Java Tutorial - Exception Handling
- [Exception Handling in Java](/community/tutorials/exception-handling-in-java)
- [java.lang.NoSuchMethodError](/community/tutorials/java-lang-nosuchmethoderror)
- [java.lang.NullPointerException](/community/tutorials/java-lang-nullpointerexception)
Core Java Tutorial - MultiThreading and Concurrency
- [Threads in Java](/community/tutorials/java-thread-example)
- [Thread Life Cycle](/community/tutorials/thread-life-cycle-in-java-thread-states-in-java)
- [Thread Sleep Example](/community/tutorials/thread-sleep-java)
- [Thread join Example](/community/tutorials/java-thread-join-example)
- [Thread wait, notify, notifyAll Example](/community/tutorials/java-thread-wait-notify-and-notifyall-example)
- [Thread Safety in Java – Synchronization](/community/tutorials/thread-safety-in-java)
- [Java ThreadLocal Example](/community/tutorials/java-threadlocal-example)
- [Java Timer and TimerTask Example](/community/tutorials/java-timer-timertask-example)
- [Java Thread Pool Example](/community/tutorials/threadpoolexecutor-java-thread-pool-example-executorservice)
- [Java Callable Future Example](/community/tutorials/java-callable-future-example)
- [Java FutureTask Example](/community/tutorials/java-futuretask-example-program)
- [Java ScheduledThreadPoolExecutor Example](/community/tutorials/java-scheduler-scheduledexecutorservice-scheduledthreadpoolexecutor-example)
- [Java Lock Example](/community/tutorials/java-lock-example-reentrantlock)
Core Java Tutorial - Regular Expressions
- [Regular Expressions in Java Example Tutorial](/community/tutorials/regular-expression-in-java-regex-example)
- [Validating Email Address using Regular Expression in Java](/community/tutorials/java-email-validation-regex)
- [Validating Phone Number using Regex in Java](/community/tutorials/regular-expression-phone-number-validation-in-java)
Core Java Reflection API
- [Java Reflection API Tutorial](/community/tutorials/java-reflection-example-tutorial)
Java 7
- [String in switch case](/community/tutorials/java-switch-case-string)
- [Try with Resources – Java ARM](/community/tutorials/java-try-with-resources)
- [Binary Literals in Java](/community/tutorials/binary-literals-in-java-java-7-feature)
- [Underscores in Numeric Literals](/community/tutorials/underscores-in-numeric-literals-java-7-feature)
- [Catching Multiple Exceptions in a single catch block](/community/tutorials/java-catch-multiple-exceptions-rethrow-exception)
- [Java PosixFilePermission example to set File Permissions](/community/tutorials/java-set-file-permissions-posixfilepermission)
Java 8
- [Java 8 Features Overview](/community/tutorials/java-8-features-with-examples)
- [Java 8 interface changes](/community/tutorials/java-8-interface-changes-static-method-default-method)
- [Lambda Expressions in Java](/community/tutorials/java-8-functional-interfaces)
- [Stream API in Java](/community/tutorials/java-8-stream)
- [Java Date Time API Example Tutorial](/community/tutorials/java-8-date-localdate-localdatetime-instant)
- [Java Spliterator](/community/tutorials/java-spliterator)
Java 9
- [Java 9 Features](/community/tutorials/java-9-features-with-examples)
- [Java 9 private method in interfaces](/community/tutorials/java-9-private-methods-interfaces)
- [Java 9 try-with-resources improvements](/community/tutorials/javase9-try-with-resources-improvements)
- [Java 9 Optional class improvements](/community/tutorials/javase9-optional-class-improvements)
- [Java 9 Stream API improvements](/community/tutorials/javase9-stream-api-improvements)
- [Java 9 "var" for local variables](/community/tutorials/javase9-var-for-local-variables)
- [Java 9 "_" (underscore) changes](/community/tutorials/javase9-underscore-changes)
- [Java 9 Factory Methods for Immutable List](/community/tutorials/javase9-factory-methods-immutable-list)
- [Java 9 Factory Methods for Immutable Set](/community/tutorials/javase9-factories-for-immutable-set)
- [Java 9 Factory Methods for Immutable Map](/community/tutorials/javase9-factory-methods-immutable-map)
- [Java 9 Modules](/community/tutorials/java-9-modules)
- [Java 9 Module Basics Part 2](/community/tutorials/javase9-module-basics-part2)
- [Develop Java Module using Command Prompt](/community/tutorials/javase9-simple-module-cmd-prompt-part3)
- [Develop Java Module using Eclipse](/community/tutorials/javase9-helloworld-module-ides-part4)
- [Develop Java Module using IntelliJ IDEA](/community/tutorials/javase9-implied-readability-part5)
Java 10
- [Java 10 Features](/community/tutorials/java-10-features)
- [Java 10 Local Variable Type Inference](/community/tutorials/java-10-local-variable-type-inference)
Java 11
- [Java 11 Features](/community/tutorials/java-11-features)
- [6 New Methods in Java 11 String Class](/community/tutorials/java-string#java-11-string-class-new-methods)
Core Java Tutorial - Advanced Topics
- [Java Heap Memory and Stack Memory](/community/tutorials/java-heap-space-vs-stack-memory)
- [Java is Pass by Value and not Pass by Reference](/community/tutorials/java-is-pass-by-value-and-not-pass-by-reference)
- [JVM Memory Model and Garbage Collection](/community/tutorials/java-jvm-memory-model-memory-management-in-java)
- [Serialization in Java](/community/tutorials/serialization-in-java)
- [Java System Class](/community/tutorials/system-class-java-properties-out-println)
- [Internationalization (i18n) in Java](/community/tutorials/java-i18n-internationalization-in-java)
- [Atomic Operations in Java](/community/tutorials/atomicinteger-java)
- [Thread Dump in Java](/community/tutorials/java-thread-dump-visualvm-jstack-kill-3-jcmd)
- [Deadlocks in Java](/community/tutorials/deadlock-in-java-example)
- [Sorting Objects in Java](/community/tutorials/comparable-and-comparator-in-java-example)
- [Understanding JDK, JRE and JVM](/community/tutorials/difference-jdk-vs-jre-vs-jvm)
- [Java Classloader Example Tutorial](/community/tutorials/java-classloader)
- [Java clone object](/community/tutorials/java-clone-object-cloning-java)
Well, it's a lot of reading material for core java tutorial. But if you think that I have missed out on something, please go ahead and comment below. I will write something on that and add that to the list. Reference: Oracle JavaSE Tutorial