/Java-Series

Learn Java for CyberSec

Primary LanguageJava

โ˜• Java Series ๐Ÿ’ป

๐Ÿ“š In This Repo, I will Store All The Java Code Which I'm Practicing and learning.
    I'll cover all the Topics like basic format format, operators, control statements, functions, etc.

๐Ÿ“š Study Material I'm Using

๐Ÿ“‘ I have 2 sets of Notes. First, I got from my College and Second set of notes
    I got from a YouTube Channel (Code With Harry). Both are great for learning.

โ€ข College Notes

โ€ข YouTube Notes

โ€ข YouTube Video Playlist (Hindi, 25+ hours)

โ€ข YouTube Video (English, 9+ Hours)

๐Ÿ“ Note

๐Ÿ“ I Didn't cover much theory in Java files, for theory you can read notes, 
    I covered mostly practical stuff in java programming files. Check out 
    the YouTube Notes for the Question set.

๐Ÿ“š All Practice Sets

โ€ข Task 1 โ€ข Task 2 โ€ข Task 3

โ€ข 2nd Practice Set

โ€ข 3rd Practice Set

โ€ข 4th Practice Set

โ€ข 5th Practice Set

โ€ข 6th Practice Set

โ€ข 7th Practice Set

๐Ÿš€ All Java Mini Projects

โ€ข Stone Paper & Scissor Game

โ€ข Guess the Number Game

โ€ข GUI Based Calculator

โ€ข Login/Signup System

โ€ข Swing GUI Module

๐Ÿ“œ Topics

๐Ÿ“š Topic ๐Ÿš€ Link
๐Ÿงฉ Basic Format Of Java ๐Ÿ”— Link
๐Ÿ”„ Data Type Conversion ๐Ÿ”— Link
๐Ÿ–Š๏ธ Input From User ๐Ÿ”— Link
โž• Operators in Java ๐Ÿ”— Link
๐Ÿ“ Task 1 ๐Ÿ”— Link
๐Ÿ“ Task 2 ๐Ÿ”— Link
๐Ÿ“ Task 3 ๐Ÿ”— Link
๐Ÿ”„ Associativity Of Operators ๐Ÿ”— Link
๐Ÿ“‹ Data Types ๐Ÿ”— Link
โœ๏ธ 2nd Practice Set ๐Ÿ”— Link
๐Ÿ–จ๏ธ 4 Print Methods ๐Ÿ”— Link
๐Ÿงต Introduction To Strings ๐Ÿ”— Link
๐Ÿ“– String Methods/Functions ๐Ÿ”— Link
โœ๏ธ 3rd Practice Set ๐Ÿ”— Link
โ“ Conditional Statements: โ€ขIf Else ๐Ÿ”— Link
๐Ÿ”„ Switch Case ๐Ÿ”— Link
๐Ÿ” Looping Statements: โ€ขWhile โ€ขDo-While โ€ขFor ๐Ÿ”— Link
๐ŸชŸ Jumping Statements: โ€ขBreak โ€ขContinue ๐Ÿ”— Link
โœ๏ธ 4th Practice Set ๐Ÿ”— Link
๐Ÿ“ฆ Introduction to Array ๐Ÿ”— Link
๐Ÿ”ณ 2-D Array ๐Ÿ”— Link
๐Ÿ”’ Access Modifiers ๐Ÿ”— Link
๐Ÿ“š 5th Practice Set ๐Ÿ”— Link
โš™๏ธ Introduction to Static & Non-static Methods ๐Ÿ”— Link
๐Ÿ”€ Method Overloading ๐Ÿ”— Link
๐Ÿงฎ VarArgs ๐Ÿ”— Link
โ™ป๏ธ Recursion, Factorial & Fabonacci ๐Ÿ”— Link
โœ๏ธ 6th Practice Set ๐Ÿ”— Link
๐Ÿงช Creating Custom Classes ๐Ÿ”— Link
๐Ÿ“š 7th Practice Set ๐Ÿ”— Link
๐Ÿ”’ Access Modifiers: Private ๐Ÿ”— Link
โš™๏ธ Constructors ๐Ÿ”— Link
โš™๏ธ Constructors Overloading ๐Ÿ”— Link
๐ŸŽฎ Stone Paper Scissor Game using OOPS Concept ๐Ÿ”— Link
๐Ÿงฌ Inheritance ๐Ÿ”— Link
โš™๏ธ Constructors In Inheritance ๐Ÿ”— Link
๐Ÿ”„ This & Super Keywords ๐Ÿ”— Link
๐Ÿ”€ Method Overriding ๐Ÿ”— Link
๐Ÿ”„ Dynamic Method Dispatch ๐Ÿ”— Link
๐Ÿ“š 8th Practice Set ๐Ÿ”— Link
๐Ÿ“˜ Abstract Class ๐Ÿ”— Link
๐ŸŒ Introduction To Interfaces ๐Ÿ”— Link
๐Ÿชง Multiple Interfaces Implements In Single Class ๐Ÿ”— Link
โš™๏ธ Default Methods in Interfaces ๐Ÿ”— Link
๐Ÿ”„ Inheritance In Interfaces ๐Ÿ”— Link
๐Ÿ“ File Handling ๐Ÿ”— Link
โŒ Error Handling ๐Ÿ”— Link
๐Ÿงต MultiThreading ๐Ÿ”— Link
๐Ÿงถ Thread Priority ๐Ÿ”— Link

๐Ÿ“‹ Java Syllabus

1. Introduction to Java:
   - History of Java
   - Installation of Java Development Kit (JDK)
   - Writing and running a simple Java program
   - Basic syntax and structure of Java programs

2. Variables and Data Types:
   - Primitive data types (int, double, char, boolean, etc.)
   - Declaring and initializing variables
   - Type casting
   - Constants

3. Operators:
   - Arithmetic operators
   - Comparison operators
   - Logical operators
   - Assignment operators
   - Increment and decrement operators

4. Control Flow:
   - Conditional statements (if, else if, else, switch)
   - Looping statements (for, while, do-while)
   - Break and continue statements
   - Exception handling (try, catch, throw, throws, finally)

5. Arrays:
   - Declaring and initializing arrays
   - Accessing and modifying array elements
   - Multidimensional arrays
   - Array methods (length, clone, etc.)

6. Object-Oriented Programming (OOP):
   - Classes and objects
   - Constructors
   - Methods and method overloading
   - Inheritance
   - Polymorphism
   - Encapsulation
   - Abstraction
   - Interfaces and abstract classes

7. Exception Handling:
   - Checked vs. unchecked exceptions
   - Custom exceptions
   - Exception hierarchy
   - Handling exceptions using try-catch blocks

8. File I/O:
   - Reading from and writing to files
   - Using BufferedReader, BufferedWriter, FileReader, and FileWriter

9. Collections Framework:
   - ArrayList, LinkedList, HashSet, HashMap, etc.
   - Iterators and foreach loop
   - Sorting and searching collections

10. Threads and Concurrency:
    - Creating and managing threads
    - Synchronization
    - Thread safety

11. Java Standard Library (java.util, java.io, java.lang, etc.):
    - Date and time manipulation
    - String manipulation
    - Regular expressions
    - Math functions
    - Wrapper classes

12. Graphical User Interfaces (GUI):
    - Introduction to JavaFX or Swing (depending on the course)
    - Building simple GUI applications

13. Database Connectivity (JDBC):
    - Connecting to databases
    - Executing SQL queries
    - Retrieving and manipulating data

14. Introduction to Java Frameworks (optional):
    - Spring, Hibernate, etc. (if relevant to the course)

15. Best Practices and Coding Standards:
    - Code formatting and naming conventions
    - Documentation and comments
    - Code optimization

16. Project Work (if applicable):
    - Developing a Java application as a final project