Lab code, exercises, and assignments for the PMAT-205 Java Programming course.
This repository contains all Java lab session source code, exercises, and assignments for PMAT-205 — Object-Oriented Programming with Java. Each folder represents a specific lab session, named with the date and topic covered, forming a chronological learning path through core Java concepts.
This coursework is part of PMAT-205, offered by the Department of Mathematics and Computer Science at Sri Sathya Sai Institute of Higher Learning (SSSIHL), Prasanthi Nilayam (Puttaparthi).
| Folder | Date | Topic |
|---|---|---|
2024-12-10/ |
Dec 10, 2024 | Introduction — Java Basics & Environment Setup |
2024-12-12/ |
Dec 12, 2024 | Core Java — Classes, Objects & Methods |
2024-12-18/ |
Dec 18, 2024 | OOP Fundamentals — Encapsulation & Constructors |
2025-01-16 Inheritance/ |
Jan 16, 2025 | Inheritance & Polymorphism |
2025-01-21 Array/ |
Jan 21, 2025 | Arrays (1D, 2D, varargs) |
2025-01-21 Interface/ |
Jan 21, 2025 | Interfaces & Abstract Classes |
2025-01-21 Tagable/ |
Jan 21, 2025 | Taggable/Marker Interface Pattern |
2025-01-24 Class Path/ |
Jan 24, 2025 | Java CLASSPATH |
2025-01-24 Packages/ |
Jan 24, 2025 | Packages & Access Modifiers |
2025-02-06 Exceptions/ |
Feb 6, 2025 | Exception Handling — try/catch/finally |
2025-02-06 Exceptions 2/ |
Feb 6, 2025 | Custom Exceptions & Exception Chaining |
2025-02-10 Collections/ |
Feb 10, 2025 | Java Collections Framework |
2025-02-17 InnerClasses/ |
Feb 17, 2025 | Inner, Static Nested & Anonymous Classes |
2025-03-05 IO Streams 1/ |
Mar 5, 2025 | I/O Streams — Byte Streams |
2025-03-05 IO Streams 2/ |
Mar 5, 2025 | I/O Streams — Character Streams & Buffering |
2025-03-10 Networks/ |
Mar 10, 2025 | Java Networking — Sockets & Client-Server |
Classpath directory/ |
— | CLASSPATH demo directory structure |
Dijkshtras/ |
— | Dijkstra's Shortest Path Algorithm |
All files are plain Java. Compile and run from the terminal:
# Compile
javac FileName.java
# Run
java FileNameFor programs organized into packages:
# Compile into package structure
javac -d . FileName.java
# Run with fully qualified class name
java com.example.ClassNameFor programs requiring a custom CLASSPATH:
javac -cp ".;lib/*" FileName.java
java -cp ".;lib/*" FileName- JDK 8+ — Download from Oracle or use OpenJDK
- IDE (optional but recommended):
- IntelliJ IDEA — best for Java development
- Eclipse
- VS Code with the Java Extension Pack
Basics & OOP (Dec 2024)
↓
Inheritance, Arrays, Interfaces, Packages (Jan 2025)
↓
Exceptions, Collections, Inner Classes (Feb 2025)
↓
I/O Streams, Networking (Mar 2025)
↓
Algorithms — Dijkstra's (Bonus)
Prabin Kumar Sabat · prabins.vercel.app · GitHub @PrabinKuSabat
Sri Sathya Sai Institute of Higher Learning
Prasanthi Nilayam (Puttaparthi) — Department of Mathematics and Computer Science