Skip to content

Onlyriley/BeginnerJavaProjects

Repository files navigation

📚 Java Educational Projects

Welcome to my collection of Java projects! This repository contains a variety of examples designed to help learners understand core concepts of Java programming through hands-on practice. Each folder focuses on a fundamental topic, complete with code implementations, test methods, and explanations. These projects cover essential topics in beginner Java development.


📋 Table of Contents


🔢 Array List

This project features a custom implementation of an ArrayList using standard arrays. By building an array list from scratch, you'll gain a deeper understanding of how dynamic arrays work under the hood, including resizing and memory management. It also includes a test class to validate the functionality of the custom list.


💬 Chat Room

Learn the basics of Java networking with this chat room project. It demonstrates how to set up a server-client architecture that allows multiple clients to connect and chat in real time. This is a great introduction to:

  • Multi-threading 🧵
  • Socket programming 🔌
  • Network communication 🌐

🎨 JavaFX

This folder showcases the basics of JavaFX, Java’s GUI toolkit for creating modern desktop applications. You'll learn:

  • Drawing shapes (rectangles, circles, etc.) 🟦
  • Handling basic graphical events 🖱️
  • Creating interactive and visually appealing interfaces 🎭

🎲 Monte Carlo Simulations

Explore the power of randomness with Monte Carlo simulations. These projects help estimate probabilities through repeated random sampling, a technique widely used in:

  • Finance 📈
  • Physics ⚛️
  • Artificial intelligence 🤖

🏦 Mortgage Server

A client-server application that reimagines the classic mortgage calculator. Here's how it works:

  1. The client sends mortgage data to the server.
  2. The server applies the mortgage formula.
  3. The result is sent back to the client.

This project reinforces:

  • Client-server communication 🌐
  • Serialization 📦
  • Network programming concepts ⚡

🔄 Queue (Linked List Implementation)

Dive into data structures by implementing a Queue using linked lists. This project will help you master:

  • Enqueue and dequeue operations ➡️⬅️
  • Managing dynamic memory 💾
  • Understanding pointers in Java 🔗

✂️ String Manipulation

A series of exercises focusing on string operations. Learn to:

  • Reverse strings 🔄
  • Format text 📏
  • Perform pattern matching 🔍

📖 Word Dictionary

A simple dictionary application that demonstrates:

  • Class creation and object-oriented principles 🔧
  • Storing words and their definitions 📘
  • Basic CRUD (Create, Read, Update, Delete) operations 📝

🚀 How to Run the Projects

  1. Install the latest Java Development Kit (JDK).
  2. Clone this repository:
    git clone https://github.com/onlyriley/BeginnerJavaProjects.git
    
    

🙌 Contributions

If you have any small Java projects that helped you, or if you want to improve on these existing projects, you can contribute by:

  1. Creating a new branch
  2. Submitting a pull request

Releases

No releases published

Packages

No packages published

Languages