Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Core Java Programming for Complete Beginners to Pro [2025]
Highest Rated
Rating: 5.0 out of 5(11 ratings)
130 students

Core Java Programming for Complete Beginners to Pro [2025]

Core Java Programming for Beginners. Core Java Tutorial, Learn Java Programming, Core Java Training. Become Job Ready!
Last updated 11/2025
English
English [Auto],

What you'll learn

  • Fundamentals of programming, object-oriented concepts, and practical skills like building applications, debugging, and using various Java frameworks and library
  • Learn the basic grammar, including data types, variables, operators, and control flow structures (if/else, loops).
  • Understand core OOP concepts like classes, objects, inheritance, polymorphism, and encapsulation.
  • Explore common data structures (arrays, linked lists, trees) and algorithms implemented in Java.
  • Building Projects: Apply your knowledge by developing simple applications or projects to solidify your understanding.
  • Using Java Development Environments (IDEs): Become proficient with popular IDEs like IntelliJ IDEA, Eclipse, or NetBeans.

Course content

1 section111 lectures22h 33m total length
  • JDK, JRE, JVM, JVM Architecture, Path Setting, Class Path Setting26:15

    1. JDK (Java Development Kit)

    • What it is: A software development environment used to develop Java applications.

    • Includes:

      • JRE (Java Runtime Environment)

      • Compiler (javac)

      • Debugger

      • Tools for development (e.g., javadoc, javap)

    • Use: Needed for developing, compiling, and running Java programs.

    2. JRE (Java Runtime Environment)

    • What it is: A part of the JDK used to run Java programs.

    • Includes:

      • JVM

      • Core libraries and other files required for execution

    • Use: Needed only to run Java programs, not to develop them.

    3. JVM (Java Virtual Machine)

    • What it is: An abstract machine that executes Java bytecode.

    • Platform-independent: JVMs are available for many hardware and software platforms.

    • Use: Converts bytecode (.class files) into machine code for execution on the host system.

    4. JVM Architecture

    The JVM consists of several components:

    • Class Loader: Loads .class files (bytecode) into memory.

    • Method Area: Stores class structures like metadata, method info, and constant pool.

    • Heap: Stores objects and class instances.

    • Stack: Stores method calls and local variables (one stack per thread).

    • Program Counter (PC) Register: Holds the address of the current executing instruction.

    • Execution Engine:

      • Interpreter: Interprets bytecode line by line.

      • JIT Compiler (Just-In-Time): Converts bytecode into native code for better performance.

    • Native Method Interface: Enables Java code to interact with native libraries (e.g., C/C++).

    • Native Method Libraries: Platform-specific libraries.

    5. Path Setting

    • Purpose: To run Java commands (java, javac, etc.) from any directory in the command line.

    • How to Set (Windows):

      • Find the JDK bin folder path (e.g., C:\Program Files\Java\jdk-XX\bin)

      • Add it to the system PATH environment variable:

        • Right-click This PC > Properties > Advanced system settings > Environment Variables

        • Under System Variables, find Path, click Edit, and add the JDK bin path.

    6. Class path Setting

    • Purpose: To tell the JVM and compiler where to find user-defined classes and packages.

  • Keywords, Identifiers, literals & datatypes26:34
  • Questions of Java9:00

    Explore key Java fundamentals by answering common questions on exe vs class files, function versus method, Java bytecode, parameters and arguments, comments, Git, and Unicode.

  • Getting Started with Java Create your First Program for Beginners48:08
  • How to write program in java39:14

    learn why the Java main method is public and static, how the JVM invokes it, and how command line arguments are passed as a string array args.

  • What is object Reference. How to create Object in Java, types of Object, Calling25:50
  • Call by Reference11:39
  • Call by Value7:29
  • Local Variable10:56

    Explore local variables in Java, declared inside a method or constructor, with lifetime limited to scope. They must be initialized before use and are declared with default access specifier.

  • Memory Management in Java & Instance Variable31:30
  • Instance Variable Program6:59
  • Static Variable theory28:46
  • static variable program8:08

    Explore how static variables are initialized by the class loader at class loading time, ahead of main, and how static data is shared across instances, demonstrated with example outputs.

  • Difference Between static Variable and Instance Variable2:44
  • Final variable & Constant22:15

    Explore final variables in Java, including how instance and static variables require initialization, auto initialization by the JVM or class loader, and how public static final constants are declared.

  • Static block & non-static block27:06
  • static and non-static block program11:41

    Explore static and non-static blocks in Java, showing class loading initializes static data, then sequential blocks execute; observe non-static blocks before constructors and object data updates.

  • Wrapper Class part-138:17
  • Wrapper class Part-229:14

    Explore wrapper classes in Java, including boolean, byte, short, char, int, float, long, and double, and learn autoboxing and unboxing with practical constructor examples and string conversions.

  • wrapper class program10:00
  • Command line argument16:51
  • Commandline argument program8:43
  • Scanner class Theory20:00

    Use Scanner class to take input from standard input in Java, including creating the Scanner with System.in, importing java.util.Scanner, and reading data with nextLine and nextInt/nextDouble.

  • Scanner Class Program8:18

    Use the Scanner class to read a number from the keyboard and compute the sum of its digits with a modulo ten loop, then print the result.

  • Data Input Stream13:26

    Learn to take keyboard input using the data input stream class from java.io, constructing with system.in, reading lines with readLine, handling IO exception, and parsing to int or double.

  • Data Input Stream Class Program9:01

    Learn how to use the data input stream class from java.io to read keyboard input, convert it to integers with parseInt, and implement a prime number checker.

  • Intro21:20
  • Loop39:28
  • Loop 111:57
  • Loop 20:39
  • Loop 38:25

    Demonstrate building a parity checker that prints even and odd numbers in a range using a while loop with input via scanner, and compare with for and do while loops.

  • Loop47:51
  • Loop 56:40
  • 6)Loop9:49

    Explore loop concepts in Java using a practical example, including do-while and while loops, increment operators, break, and conditions to control program flow.

  • Loop 77:00
  • Loop 88:27
  • Loop 97:53
  • Loop 1010:07
  • Loop 119:11
  • Loop 125:54
  • Loop 137:17
  • Swap with third variable9:41
  • Swap without third variable9:58
  • find out biggest number10:49
  • factorial of a number8:24
  • Fibonacci series11:38
  • Table7:14
  • Triangle 114:08
  • Triangle 211:31
  • Triangle 37:30

    Learn to design a triangle pattern in Java using nested loops and a scanner to input the number of rows, printing stars or numbers per row.

  • unary operator theory7:22
  • Unary operator Program20:20
  • Binary Operator Part-111:39
  • Binary operator part-214:39

    Explore bitwise operators in core java with examples of and, or, and xor on 8-bit words, plus short-circuit logical operators and the unary, binary, and ternary forms.

  • binary operator & ternary operator program20:16

    Learn how binary and ternary operators work in Java, including arithmetic and assignment nuances, short-circuit evaluation, and how type casting and operator differences resolve incompatible types.

  • if-else, switch case19:32

    Explore basic conditionals in Java, including if-else, boolean handling, and switch cases, with practical examples and differences from C, and modern string switch support.

  • if-else, switch case program21:34
  • 0014:49
  • 0022:54
  • 0032:03

    Learn that you can overload the main method in Java. The Java virtual machine calls only the main with a string array parameter.

  • 0043:28
  • 0054:32
  • 0064:14
  • 0073:23
  • 0081:36

    Explore Java comments and their types, including single-line, multi-line, and document comments, and learn how the compiler skips them and how they explain variables, methods, and classes.

  • 0091:26
  • 0102:06

    define an object as the instance of a class, carrying state, behavior, and identity. recognize that in java, object is the base class for every class.

  • 0113:51

    Explore inheritance as a core object‑oriented concept, where a child class reuses the base class's properties and behavior, forming a maintainable hierarchy through extends and implements.

  • 0124:17
  • 0132:42

    Explore encapsulation as wrapping data and the methods that operate on it into a single unit to hide internal details and protect data from unauthorized access.

  • 0143:05
  • 0155:26

    Explore typecasting of object references in Java with inheritance, showing that a base class reference can point to a child object and require casting to access child members.

  • 0163:03
  • 0172:14
  • 0183:30

    Discover how the super keyword acts as a non-static reference to base members in inheritance. Use it to differentiate base and child variables, call base constructors, and invoke overridden methods.

  • 0193:44
  • 0202:34

    Explain how a Java abstract class is declared with the abstract keyword and cannot be instantiated; it may contain abstract and non-abstract methods, with abstract methods overridden by child classes.

  • 0214:56
  • 0222:35

    Explain marker interfaces in Java as blank interfaces with no methods or variables, and illustrate how Cloneable in java.lang signals object cloning.

  • 0232:55
  • 0245:16
  • 0252:11

    Differentiate abstract class and interface by noting that abstract class cannot support multiple inheritance. Interface supports multiple inheritance and defines only abstract, default, private, or static methods with constants.

  • Triangle112:31
  • Triangle211:27
  • Triangle 38:45
  • Triangle 412:11
  • Swap two numbers through third variable6:25
  • Swap two numbers without third variable6:21
  • Table5:46

    Design a multiplication table in Java by reading a number with a Scanner and printing results from 1 to 10 using System.out and a for loop.

  • Find out factorial of a number6:32
  • Fibonacci Series11:19
  • Tribonacci Series7:11
  • sum of digit10:21
  • Reverse a number7:01
  • Number palindrome5:35

    Write a Java program to check whether a number is a palindrome by reversing digits with a scanner input and comparing it to the original.

  • Armstrong number7:00
  • Prime number6:31

    Enter a number and determine if it is prime in Java by counting divisors from 1 to n using the Scanner, and print whether it is a prime or not.

  • Array Part 1 theory33:43

    Explore how Java arrays are data structures that hold primitive types or object references in zero-based indices, and learn declaration, construction, initialization, length, and array index out of bounds exception.

  • Array Part 1 practical8:24
  • Array part 237:04

    Explore java array concepts, including array of object references and two dimensional arrays, with memory layout, default null references, and initialization for string and user defined classes.

  • Array part 2 Lab16:30
  • biggest and smallest14:50
  • Second Largest Number10:34
  • Reverse13:42
  • Sumofpair13:10
  • Remove duplicate element19:31
  • Bubble sort23:56

    Learn bubble sort by illustrating how the largest element moves to the end, using nested loops and swapping in a Java example, with arrays printed before and after sorting.

  • Selection sort24:26

    Discover how selection sort arranges an array in ascending order by repeatedly placing the smallest element at the front, with a hands-on Java example.

  • Insertion sort26:57
  • Linear search.mov12:22

    Explore linear searching, implement a Java linear search to find an element in an array, return its index or -1 when not found, and understand input handling and array traversal.

  • Binary search23:58

Requirements

  • To effectively learn Java, you don't need extensive prior knowledge, but having basic computer skills and understanding of general programming concepts can be helpful. Familiarity with object-oriented programming (OOP) principles and a command-line shell can also be beneficial.

Description

Course Title: Core Java Programming for Beginners 2025

Instructor: Rashmi Kanta Das , 25+ Years of Industry Experience

Course Overview:

Welcome to Mastering Core Java – a complete guide designed for both beginners and professionals seeking to build a strong foundation in Java programming. This course, led by Rashmi Kanta Das, a highly experienced software engineer with over 25 years of hands-on industry experience, will equip you with all the essential knowledge and skills to become proficient in Core Java.

Whether you're looking to start a career as a Java developer or enhance your existing skills, this course offers an in-depth, practical, and engaging learning experience.

What You’ll Learn:

Introduction to Java:
Understand what Java is, how it works, and why it remains one of the most popular programming languages in the world. Explore Java’s architecture, key features, and the Java Virtual Machine (JVM).

Java Basics:
Learn the fundamental building blocks of Java, including variables, data types, operators, loops, and control flow. Gain proficiency in writing basic Java programs.

Object-Oriented Programming (OOP) in Java:
Dive deep into the principles of OOP, including classes, objects, inheritance, polymorphism, encapsulation, and abstraction. Learn how to structure your programs effectively and write scalable, maintainable code.

Exception Handling:
Master the art of handling errors gracefully in Java using try-catch blocks, custom exceptions, and exception propagation. Learn to write robust applications that handle runtime errors efficiently.

Java Collections Framework:
Get hands-on experience with core data structures like Lists, Sets, Maps, and Queues. Discover the power and versatility of the Java Collections API and how to manage groups of objects in your programs.

Multithreading and Concurrency:
Understand the basics of multithreading, how to create and manage threads, and how to work with concurrency utilities. Explore synchronization, thread safety, and common issues in multi-threaded applications.

Java I/O (Input and Output):
Learn how to read and write files, work with streams, and manage file system operations in Java. Understand how to handle resources efficiently.

Java 8 Features:
Delve into the powerful features introduced in Java 8, such as lambda expressions, streams, and functional programming. These features simplify the way we write Java code and improve efficiency.

Java Best Practices and Code Optimization:
Learn industry-standard best practices for writing clean, maintainable, and high-performance Java code. Understand how to optimize for performance, memory management, and readability.

Unit Testing in Java:
Get introduced to unit testing using JUnit. Learn how to write test cases, run tests, and ensure your code is bug-free and reliable.

Course Features:

  • Hands-On Coding Exercises:
    Engage in practical coding exercises to reinforce your learning. By solving real-world problems, you’ll gain valuable hands-on experience.

  • Real-World Applications:
    Each module includes examples and projects based on industry-standard applications, showing how Java is used in real-world scenarios.

  • Experienced Instructor:
    Rashmi Kanta Das brings over 25 years of experience in software development and Java programming. His teaching approach simplifies complex concepts, ensuring an easy and effective learning process.

  • Lifetime Access:
    Enjoy lifetime access to course materials, including video lectures, coding examples, and downloadable resources—learn at your own pace and revisit any topic as needed.

  • Q&A Support:
    Access a dedicated Q&A forum where you can interact with the instructor and fellow students. Rashmi will be available to answer your questions and assist with any challenges.

  • Certificate of Completion:
    Receive a certificate upon successful completion of the course—perfect for showcasing your skills on your resume, LinkedIn, and other professional platforms.

Who This Course is For:

  • Beginners who want to learn Java from scratch and build a solid programming foundation.

  • Intermediate programmers looking to refresh and deepen their Core Java knowledge.

  • Professionals seeking to switch to Java or expand their current skill set.

  • Anyone interested in writing efficient, clean, and maintainable Java code.

Why Learn Core Java with Rashmi Kanta Das?

With over 25 years of professional experience in software development and a passion for teaching, Rashmi Kanta Das offers unmatched expertise and insight. He has worked with global organizations, contributed to large-scale enterprise applications, and mentored countless developers who have gone on to successful careers.

This course reflects his extensive experience and dedication to making Java learning practical, accessible, and enjoyable.

Enroll Today!

Begin your journey toward becoming a Java expert with Rashmi Kanta Das. Whether you're aiming to land your first programming job or advance your career, this course provides the skills, knowledge, and confidence to succeed.

Join thousands of students who have transformed their programming abilities and unlocked their full potential.

Who this course is for:

  • Web Developer, Mobile App Developer, User Experience Designer, Data Scientist, Game Designer, and Laboratory Scientist.