Rishiraj-Pathak-27/Java-Complete-Notes
A complete Java learning repository with clear notes, example programs, and coding practice questions ranging from basic concepts to OOP and interview-level problems. Ideal for beginners starting their programming journey and for learners who want a single place to revise Java fundamentals and prepare for technical interviews.
Java Complete Notes
A comprehensive collection of Java programming notes and examples β from basic syntax and core concepts to interview practice problems. This repository is ideal for learners preparing for exams, coding interviews, or building a strong Java foundation.
π§ About
This repository contains organized Java notes, example programs, and practice problems. The content is arranged topic-wise so you can easily learn, revise, and practice Java step by step.
Whether you're a beginner or preparing for interviews, this repo will help you strengthen your Java fundamentals.
π Topics Covered
β Java Fundamentals (variables, data types, input/output)
β Operators & Expressions
π Conditionals (if, switch)
π Loops (for, while, do-while)
π§© Methods (Functions)
π¦ Arrays & ArrayLists
π€ Strings
ποΈ Object-Oriented Programming (OOP)
π Practice Programs
πΌ Java Interview Questions
π Platform Coding Questions
π Repository Structure
βββ π Exercise
β βββ π conditionals
β β βββ β conditionals.class
β β βββ β conditionals.java
β βββ π loops
β β βββ β loops.class
β β βββ β loops.java
β βββ π patterns
β β βββ π AdvancedPatterns
β β β βββ β Solution.class
β β β βββ β patterns.class
β β β βββ β patterns.java
β β βββ β patterns.class
β β βββ β patterns.java
β βββ β PS1.class
β βββ β PS1.java
β βββ β PS2.class
β βββ β PS2.java
β βββ β PS3.class
β βββ β PS3.java
β βββ β PS4.class
β βββ β PS4.java
β βββ β bookPS.class
β βββ β bookPS.java
βββ π JavaInterviewQuestions
β βββ π java.md
βββ π OOPS
β βββ π AbstractClass
β β βββ β Department.class
β β βββ β Staff.class
β β βββ β Students.class
β β βββ β absBasics.class
β β βββ β absBasics.java
β βββ π ArrayList
β β βββ β ArrayList.class
β β βββ β arrayListCreation.class
β β βββ β arrayListCreation.java
β βββ π Basics
β β βββ β basicOops$Student.class
β β βββ β basicOops.class
β β βββ β basicOops.java
β βββ π FinalAndStatic
β β βββ β Student.class
β β βββ β finalAndStatic.class
β β βββ β finalAndStatic.java
β βββ π Inheritance
β β βββ β Animal.class
β β βββ β Cat.class
β β βββ β Cow.class
β β βββ β Dog.class
β β βββ β Father.class
β β βββ β GrandFather.class
β β βββ β Son.class
β β βββ β basics.class
β β βββ β basics.java
β β βββ β college.class
β β βββ β departments.class
β βββ π Polymorphism
β β βββ β Polymorphism$Cat.class
β β βββ β Polymorphism$Dog.class
β β βββ β Polymorphism$Lion.class
β β βββ β Polymorphism.class
β β βββ β Polymorphism.java
β βββ π PrivateMethods
β β βββ β Student.class
β β βββ β privateMethods.class
β β βββ β privateMethods.java
β βββ π arraysInClass
β β βββ β basics$Car.class
β β βββ β basics$Student.class
β β βββ β basics.class
β β βββ β basics.java
β βββ π constructors
β β βββ π questions
β β β βββ β book$Book.class
β β β βββ β book.class
β β β βββ β book.java
β β β βββ β empSalary$Employee.class
β β β βββ β empSalary.class
β β β βββ β empSalary.java
β β β βββ β mobilePrice$Mobile.class
β β β βββ β mobilePrice.class
β β β βββ β mobilePrice.java
β β β βββ β questionOne$Laptop.class
β β β βββ β questionOne.class
β β β βββ β questionOne.java
β β β βββ β rectangleArea$Rectangle.class
β β β βββ β rectangleArea.class
β β β βββ β rectangleArea.java
β β βββ β constructorBasics$Student.class
β β βββ β constructorBasics.class
β β βββ β constructorBasics.java
β βββ π questions
β β βββ β BankAccount.class
β β βββ β Employee$getterSetter.class
β β βββ β Employee.class
β β βββ β Mobile.class
β β βββ β Student.class
β β βββ β basicClass$Car.class
β β βββ β basicClass.class
β β βββ β basicClass.java
β β βββ β complexClass$CompNumClass.class
β β βββ β complexClass.class
β β βββ β complexClass.java
β β βββ β fractionClass$Fraction.class
β β βββ β fractionClass.class
β β βββ β fractionClass.java
β β βββ β getterSetter.class
β β βββ β getterSetter.java
β β βββ β mobilePhone.class
β β βββ β mobilePhone.java
β β βββ β studentMarks.class
β β βββ β studentMarks.java
β β βββ β validationLogic.class
β β βββ β validationLogic.java
β βββ π this
β β βββ β Demo.class
β β βββ β Guns.class
β β βββ β Validation.class
β β βββ β example$Guns.class
β β βββ β example.class
β β βββ β example.java
β β βββ β passwordValidation.class
β β βββ β passwordValidation.java
β β βββ β thisKeyword$Car.class
β β βββ β thisKeyword.class
β β βββ β thisKeyword.java
β βββ β Student.class
β βββ β passByReference$Car.class
β βββ β passByReference.class
β βββ β passByReference.java
βββ π Platform_Questions
β βββ π geeks
β β βββ β ArrayLeaders.java
β β βββ β fizzBuzz.class
β β βββ β fizzBuzz.java
β β βββ β moveAllZerosToEnd.class
β β βββ β moveAllZerosToEnd.java
β β βββ β reverseInGroups.class
β β βββ β reverseInGroups.java
β β βββ β twoSum.class
β β βββ β twoSum.java
β βββ π hackerRank
β βββ π leetcode
β βββ β buySellStock.class
β βββ β buySellStock.java
β βββ β buySellStockTwo.class
β βββ β buySellStockTwo.java
β βββ β fibonnaciNumber.class
β βββ β fibonnaciNumber.java
β βββ β firstAndLastPosition.class
β βββ β firstAndLastPosition.java
β βββ β majorityElement.class
β βββ β majorityElement.java
β βββ β medianOfTwoSorted.class
β βββ β medianOfTwoSorted.java
β βββ β mergeSortedArrays.class
β βββ β mergeSortedArrays.java
β βββ β missingNumber.class
β βββ β missingNumber.java
β βββ β moveAllZerosToEnd.java
β βββ β removeElements.class
β βββ β removeElements.java
β βββ β rotateArrayRight.java
β βββ β sortColors.class
β βββ β sortColors.java
β βββ β twoSum.class
β βββ β twoSum.java
βββ π TwoDArrays
β βββ π forEachLoop
β β βββ β forEachLoop.class
β β βββ β forEachLoop.java
β βββ β arrayTranspose.class
β βββ β arrayTranspose.java
β βββ β basics.class
β βββ β basics.java
β βββ β columnWisePrinting.class
β βββ β columnWisePrinting.java
β βββ β diagonalElements.class
β βββ β diagonalElements.java
β βββ β diagonalSum.class
β βββ β diagonalSum.java
β βββ β evenOdd.class
β βββ β evenOdd.java
β βββ β matrixMultiplication.class
β βββ β matrixMultiplication.java
β βββ β max.class
β βββ β max.java
β βββ β maxSumRow.class
β βββ β maxSumRow.java
β βββ β minOutOfmax.class
β βββ β minOutOfmax.java
β βββ β reverseAntiClockWise.class
β βββ β reverseAntiClockWise.java
β βββ β reverseColumWise.class
β βββ β reverseColumWise.java
β βββ β reverseRowWise.class
β βββ β reverseRowWise.java
β βββ β rotateColckwise.class
β βββ β rotateColckwise.java
β βββ β snakePattern.class
β βββ β snakePattern.java
β βββ β squareTranspose.class
β βββ β squareTranspose.java
β βββ β sum.class
β βββ β sum.java
βββ π arrays
β βββ π ArrayListBasics
β β βββ π questions
β β β βββ β addingOne.class
β β β βββ β addingOne.java
β β β βββ β arrayAddition.class
β β β βββ β arrayAddition.java
β β β βββ β evenRemover.class
β β β βββ β evenRemover.java
β β β βββ β mergeTwoSorted.class
β β β βββ β mergeTwoSorted.java
β β β βββ β minMax.class
β β β βββ β minMax.java
β β β βββ β removeDuplicates.class
β β β βββ β removeDuplicates.java
β β β βββ β reverse.class
β β β βββ β reverse.java
β β β βββ β reverseElements.class
β β β βββ β reverseElements.java
β β βββ β arrayList.class
β β βββ β arrayList.java
β βββ π PrefixSum
β β βββ β prefixSum.class
β β βββ β prefixSum.java
β βββ π Search
β β βββ π BinarySearch
β β β βββ β binarySearch.class
β β β βββ β binarySearch.java
β β βββ π LinearSearch
β β β βββ β linearSearch.class
β β β βββ β linearSearch.java
β β βββ β KPositiveMissing.class
β β βββ β KPositiveMissing.java
β β βββ β arrangingCoins.class
β β βββ β arrangingCoins.java
β β βββ β ceilElement.class
β β βββ β ceilElement.java
β β βββ β descendingOrderSearch.class
β β βββ β descendingOrderSearch.java
β β βββ β findFirstOccurrance.class
β β βββ β findFirstOccurrance.java
β β βββ β findLastOccurrance.class
β β βββ β findLastOccurrance.java
β β βββ β firstLastOccurrance.class
β β βββ β firstLastOccurrance.java
β β βββ β floorElement.class
β β βββ β floorElement.java
β β βββ β maxCountFromPosNegElement.class
β β βββ β maxCountFromPosNegElement.java
β β βββ β peakOfArray.class
β β βββ β peakOfArray.java
β β βββ β searchInSortedRotated.class
β β βββ β searchInSortedRotated.java
β β βββ β singleAmongDoubles.class
β β βββ β singleAmongDoubles.java
β β βββ β sqrt.class
β β βββ β sqrt.java
β βββ π Sorts
β β βββ π questions
β β β βββ β KthLargestElement.class
β β β βββ β KthLargestElement.java
β β β βββ β KthSmallestElement.class
β β β βββ β KthSmallestElement.java
β β β βββ β commonElements.class
β β β βββ β commonElements.java
β β β βββ β intersectionOfTwoArrays.class
β β β βββ β intersectionOfTwoArrays.java
β β β βββ β moveAllZerosToEnd.class
β β β βββ β moveAllZerosToEnd.java
β β β βββ β removeDuplicates.class
β β β βββ β removeDuplicates.java
β β β βββ β removeDuplicatesTwo.class
β β β βββ β removeDuplicatesTwo.java
β β β βββ β removeElements.class
β β β βββ β removeElements.java
β β β βββ β sortEvenOdd.class
β β β βββ β sortEvenOdd.java
β β βββ β bubbleSort.class
β β βββ β bubbleSort.java
β β βββ β bubbleSortDecreasing.class
β β βββ β bubbleSortDecreasing.java
β β βββ β insertionSort.class
β β βββ β insertionSort.java
β β βββ β insertionSortDecreasing.class
β β βββ β insertionSortDecreasing.java
β β βββ β selectionSort.class
β β βββ β selectionSort.java
β β βββ β selectionSortDecreasing.class
β β βββ β selectionSortDecreasing.java
β β βββ β selectionSortLargestSwappingApproach.class
β β βββ β selectionSortLargestSwappingApproach.java
β βββ π TwoPointer
β β βββ β sortEvenOdd.class
β β βββ β sortEvenOdd.java
β β βββ β sortZerosOnes.class
β β βββ β sortZerosOnes.java
β β βββ β squares.class
β β βββ β squares.java
β βββ π forEachLoop
β β βββ β forEach.class
β β βββ β forEach.java
β βββ π questions
β β βββ β ArrayLeaders.class
β β βββ β ArrayLeaders.java
β β βββ β DoubleArray.class
β β βββ β DoubleArray.java
β β βββ β OneAddedArray.class
β β βββ β OneAddedArray.java
β β βββ β absArray.class
β β βββ β absArray.java
β β βββ β addMulArray.class
β β βββ β addMulArray.java
β β βββ β addingOne.class
β β βββ β addingOne.java
β β βββ β appearsAtleastOnce.class
β β βββ β appearsAtleastOnce.java
β β βββ β arrayAvg.class
β β βββ β arrayAvg.java
β β βββ β arrayCopy.class
β β βββ β arrayCopy.java
β β βββ β arrayListToArray.class
β β βββ β arrayListToArray.java
β β βββ β arrayProduct.class
β β βββ β arrayProduct.java
β β βββ β arraySorted.class
β β βββ β arraySorted.java
β β βββ β checkSortedArray.class
β β βββ β checkSortedArray.java
β β βββ β containsDuplicate.class
β β βββ β containsDuplicate.java
β β βββ β countBetweenTwo.class
β β βββ β countBetweenTwo.java
β β βββ β countNegative.class
β β βββ β countNegative.java
β β βββ β countZeros.class
β β βββ β countZeros.java
β β βββ β divisibleByGiven.class
β β βββ β divisibleByGiven.java
β β βββ β elementEqualIndex.class
β β βββ β elementEqualIndex.java
β β βββ β elementFrequency.class
β β βββ β elementFrequency.java
β β βββ β elementSearch.class
β β βββ β elementSearch.java
β β βββ β elementSum.class
β β βββ β elementSum.java
β β βββ β evenOdd.class
β β βββ β evenOdd.java
β β βββ β evenSquare.class
β β βββ β evenSquare.java
β β βββ β evenSum.class
β β βββ β evenSum.java
β β βββ β findMid.class
β β βββ β findMid.java
β β βββ β findX.class
β β βββ β findX.java
β β βββ β firstEven.class
β β βββ β firstEven.java
β β βββ β firstLastElement.class
β β βββ β firstLastElement.java
β β βββ β firstLastEqual.class
β β βββ β firstLastEqual.java
β β βββ β firstPositive.class
β β βββ β firstPositive.java
β β βββ β firstRepeating.java
β β βββ β frequencyNumArray.class
β β βββ β frequencyNumArray.java
β β βββ β greaterElementCount.class
β β βββ β greaterElementCount.java
β β βββ β greaterThanAverage.class
β β βββ β greaterThanAverage.java
β β βββ β greaterThanHundred.class
β β βββ β greaterThanHundred.java
β β βββ β greaterThanX.class
β β βββ β greaterThanX.java
β β βββ β lastAppearance.class
β β βββ β lastAppearance.java
β β βββ β lessElementCount.class
β β βββ β lessElementCount.java
β β βββ β linearSearch.class
β β βββ β linearSearch.java
β β βββ β max.class
β β βββ β max.java
β β βββ β mergeArrays.class
β β βββ β mergeArrays.java
β β βββ β mergeSort.class
β β βββ β mergeSort.java
β β βββ β mergeSortedArrays.class
β β βββ β mergeSortedArrays.java
β β βββ β min.class
β β βββ β min.java
β β βββ β minMaxDiff.class
β β βββ β minMaxDiff.java
β β βββ β missingNumber.class
β β βββ β missingNumber.java
β β βββ β multipleOfTen.class
β β βββ β multipleOfTen.java
β β βββ β negativeElements.class
β β βββ β negativeElements.java
β β βββ β oddIndicesArray.class
β β βββ β oddIndicesArray.java
β β βββ β oddSquare.class
β β βββ β oddSquare.java
β β βββ β oddsZero.class
β β βββ β oddsZero.java
β β βββ β perfectSquares.class
β β βββ β perfectSquares.java
β β βββ β positiveCheck.class
β β βββ β positiveCheck.java
β β βββ β presentQuery.class
β β βββ β presentQuery.java
β β βββ β removeDuplicates.class
β β βββ β reverseArray.class
β β βββ β reverseArray.java
β β βββ β rotateArrayLeft.class
β β βββ β rotateArrayLeft.java
β β βββ β rotateArrayRight.class
β β βββ β rotateArrayRight.java
β β βββ β secondElement.class
β β βββ β secondElement.java
β β βββ β secondLargest.class
β β βββ β secondLargest.java
β β βββ β secondSmallest.class
β β βββ β secondSmallest.java
β β βββ β segregateZeroOne.class
β β βββ β segregateZeroOne.java
β β βββ β segregateZeroOneTwo.class
β β βββ β segregateZeroOneTwo.java
β β βββ β squareArray.class
β β βββ β squareArray.java
β β βββ β sumUntilNegative.class
β β βββ β sumUntilNegative.java
β β βββ β targetAppearance.class
β β βββ β targetAppearance.java
β β βββ β twoSum.class
β β βββ β twoSum.java
β β βββ β wavyArray.class
β β βββ β wavyArray.java
β βββ β arrayBasics.class
β βββ β arrayBasics.java
βββ π bank
β βββ β Account.java
β βββ β addClass.java
βββ π conditionals
β βββ β cond.class
β βββ β cond.java
βββ π literals
β βββ β lit.class
β βββ β lit.java
βββ π loops
β βββ β loops.class
β βββ β loops.java
βββ π methodsorFunctions
β βββ π builtIn
β β βββ β math.class
β β βββ β math.java
β βββ π userDefined
β βββ π questions
β β βββ β add.class
β β βββ β add.java
β β βββ β armstrong.class
β β βββ β armstrong.java
β β βββ β countDigits.class
β β βββ β countDigits.java
β β βββ β digitSum.class
β β βββ β digitSum.java
β β βββ β evenOdd.class
β β βββ β evenOdd.java
β β βββ β factorial.class
β β βββ β factorial.java
β β βββ β fibonnaci.class
β β βββ β fibonnaci.java
β β βββ β max.class
β β βββ β max.java
β β βββ β multipleFunction.class
β β βββ β multipleFunction.java
β β βββ β palindromicString.class
β β βββ β palindromicString.java
β β βββ β pascalTriangle.class
β β βββ β pascalTriangle.java
β β βββ β passwordValidation.java
β β βββ β permutationAndCombination.class
β β βββ β permutationAndCombination.java
β β βββ β power.class
β β βββ β power.java
β β βββ β prime.class
β β βββ β prime.java
β β βββ β printHello.class
β β βββ β printHello.java
β β βββ β reverseNumber.class
β β βββ β reverseNumber.java
β β βββ β reverseString.class
β β βββ β reverseString.java
β β βββ β square.class
β β βββ β square.java
β β βββ β studentDetails.class
β β βββ β studentDetails.java
β β βββ β swapTwo.class
β β βββ β swapTwo.java
β β βββ β vowelCount.class
β β βββ β vowelCount.java
β βββ β function.class
β βββ β function.java
β βββ β paraFunction.class
β βββ β paraFunction.java
β βββ β returnType.class
β βββ β returnType.java
βββ π operators,precedence,associativity
β βββ π arithmetics
β β βββ β arithmetic.java
β βββ π assignments
β β βββ β assignment.java
β βββ π increment_decrement
β β βββ β incr_decr.java
β βββ π logicals
β β βββ β logical.class
β β βββ β logical.java
β βββ π relationals
β β βββ β relational.java
β βββ β expression.class
β βββ β expression.java
βββ π strings
β βββ β str.class
β βββ β str.java
βββ π userInput
β βββ β ui.class
β βββ β ui.java
βββ π variables
β βββ β first.class
β βββ β first.java
βββ π README.md
βββ β hello.class
βββ β hello.java
βββ β stringReverse.class
βββ β stringReverse.java
Each folder contains Java programs related to that topic for hands-on practice.
π How to Use These Notes
1οΈβ£ Clone the Repository
git clone https://github.com/Rishiraj-Pathak-27/Java-Complete-Notes.git2οΈβ£ Open in an IDE
Use any Java IDE like:
- IntelliJ IDEA
- Eclipse
- VS Code
3οΈβ£ Compile and Run Java Files
javac FileName.java
java FileName4οΈβ£ Learn Step by Step
Start with
Variables β Conditionals β Loops β Arrays β OOP β Practice Questions
π― Who Is This For?
β
Beginners learning Java
β
Students preparing for exams
β
Interview preparation
β
Anyone who wants quick Java revision
π€ Contributing
Contributions are welcome!
- Fork the repository
- Create a new branch
git checkout -b feature-name
- Add your notes or programs
- Commit your changes
git commit -m "Added new Java examples" - Push and open a Pull Request
β Support
If you find this repository helpful, consider giving it a β on GitHub β it helps others discover it too!
π¨βπ» Author
Rishiraj Pathak
Aspiring Computer Engineer | Java Learner | Problem Solver
βPractice makes a programmer perfect.β β