Skip to content

PIYUSHKUMAR371/Learn-Java-From-Zero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

β˜• Java Learning Repository β€” From Zero to Hero

A friendly, structured, beginner-to-advanced Java learning repo covering 71 topics across 9 modules. This is based on BroCode's Java Full Course. Every topic has notes and exercises.

πŸ—ΊοΈ How to Use This Repo

  1. Start with HOW_TO_START.md - If you're a total beginner, this file will guide you through installing Java and an IDE.

  2. Follow the Modules in Order - Start from Module_01 and work your way up. Don't skip ahead!

  3. Read the Notes First - For each topic, open the Notes_[TopicName].java file. It explains the concept with simple analogies and runnable examples.

  4. Do the Exercises - After reading the notes, complete the Exercise_[TopicName].java file. It has 3 exercises with hints.

  5. Build the Projects - Projects are marked with ⭐ in the topic list. They combine multiple concepts into fun, runnable programs.

  6. Track Your Progress - Use the checklist below to mark off completed topics.

πŸ“š Module Overview Table

Module Topics Description
Module_01_Java_Basics 01-06 Introduction, variables, input, arithmetic, and first projects
Module_02_Control_Flow_and_Math 07-12 If statements, random numbers, math class, printf, compound interest
Module_03_Strings_and_Operators 13-20 String methods, substrings, ternary operator, switches, calculator
Module_04_Loops 21-25 While loops, for loops, break/continue, nested loops, number guessing game
Module_05_Methods 26-30 Methods, overloaded methods, scope, banking program, dice roller
Module_06_Arrays 31-38 Arrays, user input to arrays, search, varargs, 2D arrays, quiz game, rock-paper-scissors, slot machine
Module_07_Object_Oriented_Programming 39-54 OOP intro, constructors, inheritance, polymorphism, abstraction, interfaces, getters/setters, aggregation, composition
Module_08_Advanced_Java 55-65 Wrapper classes, ArrayLists, exceptions, file I/O, music player, hangman, dates/times, anonymous classes, timers
Module_09_Expert_Topics 66-71 Generics, HashMaps, enums, threading, multithreading, alarm clock

πŸš€ Getting Started

Install Java

  • Download the latest JDK from oracle.com
  • Follow the installation instructions for your OS

Install an IDE

  • VS Code (Recommended for beginners): Install from code.visualstudio.com, then add the Java Extension Pack
  • IntelliJ IDEA (More advanced): Community edition is free from jetbrains.com

How to Run Java Files

  1. Open the .java file in your IDE
  2. Click the "Run" button (usually a play icon)
  3. Or use terminal: javac FileName.java then java FileName

πŸ“‹ Topic Checklist

  • 01_Introduction
  • 02_Variables
  • 03_User_Input
  • 04_Project_MadLibs ⭐
  • 05_Arithmetic
  • 06_Project_ShoppingCart ⭐
  • 07_If_Statements
  • 08_Random_Numbers
  • 09_Math_Class
  • 10_Printf
  • 11_Project_CompoundInterest ⭐
  • 12_Nested_If_Statements
  • 13_String_Methods
  • 14_Substrings
  • 15_Project_WeightConverter ⭐
  • 16_Ternary_Operator
  • 17_Project_TemperatureConverter ⭐
  • 18_Enhanced_Switches
  • 19_Project_Calculator ⭐
  • 20_Logical_Operators
  • 21_While_Loops
  • 22_Project_NumberGuessingGame ⭐
  • 23_For_Loops
  • 24_Break_and_Continue
  • 25_Nested_Loops
  • 26_Methods
  • 27_Overloaded_Methods
  • 28_Variable_Scope
  • 29_Project_BankingProgram ⭐
  • 30_Project_DiceRoller ⭐
  • 31_Arrays
  • 32_User_Input_Into_Array
  • 33_Search_An_Array
  • 34_Varargs
  • 35_2D_Arrays
  • 36_Project_QuizGame ⭐
  • 37_Project_RockPaperScissors ⭐
  • 38_Project_SlotMachine ⭐
  • 39_OOP_Introduction
  • 40_Constructors
  • 41_Overloaded_Constructors
  • 42_Array_of_Objects
  • 43_Static
  • 44_Inheritance
  • 45_Super
  • 46_Method_Overriding
  • 47_ToString_Method
  • 48_Abstraction
  • 49_Interfaces
  • 50_Polymorphism
  • 51_Runtime_Polymorphism
  • 52_Getters_and_Setters
  • 53_Aggregation
  • 54_Composition
  • 55_Wrapper_Classes
  • 56_ArrayLists
  • 57_Exception_Handling
  • 58_Write_Files
  • 59_Read_Files
  • 60_Project_MusicPlayer ⭐
  • 61_Project_HangmanGame ⭐
  • 62_Dates_and_Times
  • 63_Anonymous_Classes
  • 64_TimerTasks
  • 65_Project_CountdownTimer ⭐
  • 66_Generics
  • 67_HashMaps
  • 68_Enums
  • 69_Threading
  • 70_Multithreading
  • 71_Project_AlarmClock ⭐

πŸ’‘ Tips for Beginners

  1. Don't rush - Take your time with each concept. Understanding > Speed
  2. Experiment - Change values in the code and see what happens
  3. Google everything - If something doesn't make sense, search for it
  4. Practice daily - Even 30 minutes a day is better than cramming
  5. Join communities - Reddit's r/learnjava or Discord servers for help
  6. Build projects - Apply what you learn in small projects
  7. Don't fear errors - Errors are learning opportunities

Happy coding! πŸš€

About

πŸš€ Master Java from zero to hero! 71 structured topics, interactive exercises, and fun projects.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors