Student Name: Puneet Agarwal
Registration No.: 25BAI11166
A Java console application for managing products, stock, suppliers, prices, low-stock alerts, reports, and stock history.
- Add electronic and grocery products
- View and search products
- Update prices
- Add and sell stock
- Low-stock alerts
- Supplier management
- Inventory reports
- Stock history
- Delete products
- Local file persistence
- Reflection demonstration
- Input validation and exception handling
- Inheritance: Electronic and Grocery extend Product
- Encapsulation: private fields with validation methods
- Collections: TreeMap and ArrayList
- Exception Handling: LowStockException
- Reflection: runtime field inspection
- File I/O: local persistent data
JDK 17 or newer. Check Java:
java -version
javac -version- Clone the repository:
git clone <your-public-repository-url>
cd programming-in-java-project/InventorySystem_Puneet_AgarwalFrom the project root:
javac -d out src\ims\*.java
java -cp out ims.Mainjavac -d out src/ims/*.java
java -cp out ims.MainRun the application and test adding products, searching, changing prices, adding/selling stock, low-stock alerts, suppliers, reports, deletion, invalid inputs, and restarting the program to verify saved data.
- Main menu
README.md
statement.md
InventorySystem/
├── src/
│ └── ims/
│ ├── Main.java
│ ├── Product.java
│ ├── Electronic.java
│ ├── Grocery.java
│ ├── Supplier.java
│ ├── Inventory.java
│ └── LowStockException.java
└── data/
└── (created automatically)

