java contact
java contact
(Deemed University)
NAAC Accredited with A++
Grade
On
Submitted By:
Aryan Yadav (0901CS231025)
Ayush Arya (0901CS231027)
Submitted to:
Prof. Kratika Sharma
Assistant Professor
Jan-June 2025
MADHAV INSTITUTE OF TECHNOLOGY & SCIENCE, GWALIOR
(Deemed to be University)
NAAC Accredited with A++ Grade
CERTIFICATE
This is certified that Aryan Yadav (0901CS231025) have submitted the project report titled
“Contact Management Application” under the mentorship of Prof. Kratika Sharma, in
partial fulfilment of the requirement for the award of degree of Bachelor of Technology in
Computer Science & Engineering from Madhav Institute of Technology and Science,
Gwalior.
CERTIFICATE
This is certified that Ayush Arya (0901CS231027) have submitted the project report titled
“Contact Management Application” under the mentorship of Prof. Kratika Sharma, in
partial fulfilment of the requirement for the award of degree of Bachelor of Technology in
Computer Science & Engineering from Madhav Institute of Technology and Science,
Gwalior.
DECLARATION
I hereby declare that the work being presented in this project report, for the partial fulfilment
of requirement for the award of the degree of Bachelor of Technology in Computer Science
& Engineering at Madhav Institute of Technology & Science, Gwalior is an authenticated and
original record of my work under the mentorship of Prof. Kritika Sharma , Computer
Science & Engineering.
I declare that I have not submitted the matter embodied in this report for the award of any
degree or diploma anywhere else.
DECLARATION
I hereby declare that the work being presented in this project report, for the partial fulfilment
of requirement for the award of the degree of Bachelor of Technology in Computer Science
& Engineering at Madhav Institute of Technology & Science, Gwalior is an authenticated and
original record of my work under the mentorship of Prof. Kritika Sharma , Computer
Science & Engineering.
I declare that I have not submitted the matter embodied in this report for the award of any
degree or diploma anywhere else.
ACKNOWLEDGEMENT
The full semester project has proved to be pivotal to my career. I am thankful to my institute, Madhav
Institute of Technology and Science to allow me to continue my disciplinary/interdisciplinary
project as a curriculum requirement, under the provisions of the Flexible Curriculum Scheme (based
on the AICTE Model Curriculum 2018), approved by the Academic Council of the institute. I extend
my gratitude to the Director of the institute, Dr. R. K. Pandit and Dean Academics, Dr. Manjaree
Pandit for this.
I would sincerely like to thank my department, Department of Computer Science & Engineering,
for allowing me to explore this project. I humbly thank Dr. Manish Dixit, Head, Department of
Computer Science & Engineering, for his continued support during the course of this engagement,
which eased the process and formalities involved.
I am sincerely thankful to my faculty mentors. I am grateful to the guidance of Prof. Kritika Sharma
, Computer Science and Engineering, for her continued support and guidance throughout the
project. I am also very thankful to the faculty and staff of the department.
ACKNOWLEDGEMENT
The full semester project has proved to be pivotal to my career. I am thankful to my institute, Madhav
Institute of Technology and Science to allow me to continue my disciplinary/interdisciplinary
project as a curriculum requirement, under the provisions of the Flexible Curriculum Scheme (based
on the AICTE Model Curriculum 2018), approved by the Academic Council of the institute. I extend
my gratitude to the Director of the institute, Dr. R. K. Pandit and Dean Academics, Dr. Manjaree
Pandit for this.
I would sincerely like to thank my department, Department of Computer Science & Engineering,
for allowing me to explore this project. I humbly thank Dr. Manish Dixit, Head, Department of
Computer Science & Engineering, for his continued support during the course of this engagement,
which eased the process and formalities involved.
I am sincerely thankful to my faculty mentors. I am grateful to the guidance of Prof. Kritika Sharma
, Computer Science and Engineering, for her continued support and guidance throughout the
project. I am also very thankful to the faculty and staff of the department.
2. Acknowledgment 6-7
4. Abstract 10
5. Introduction 11
6. Implementation 12-16
8. Conclusion 17
MINI PROJECT
ABSTRACT
The Contact Management System is a Java-based console application designed to facilitate seamless
storage, retrieval, and management of contact details. The system provides a menu-driven interface,
allowing users to add new contacts, search for specific contacts by name, and display all stored
contacts in an organized manner. By utilizing object-oriented programming (OOP) principles, such as
encapsulation and modular design, the system ensures efficient data handling and streamlined
interactions.
The project is implemented using Java Collections Framework, specifically ArrayList, to store contact
objects dynamically. The ContactManager class serves as the core controller, managing user input
and executing different functionalities, while the Contact class defines the structure of individual
contact records. The system is designed to be interactive and user-friendly, prompting users with
clear options and ensuring smooth operation through an error-handling mechanism.
A key feature of the application is its ability to validate user input and prevent common errors. For
example, if a user enters an invalid selection in the menu or provides incorrect input formats, the
program gracefully handles these exceptions instead of terminating abruptly. Additionally, the
system maintains flexibility for future enhancements, such as integrating database storage, GUI-
based interfaces, or cloud-based synchronization.
This project offers valuable insights into Java programming, object-oriented design, user input
handling, exception management, and console-based application development. It serves as an
educational tool, helping learners understand real-world software implementation while reinforcing
fundamental programming concepts. With its structured and scalable architecture, this Contact
Management System can evolve into a more advanced contact-handling solution, making it highly
relevant in the domain of software development and practical applications.
INTRODUCTION
Communication plays a vital role in today's interconnected digital landscape, making efficient
messaging systems essential for seamless interaction. The Contact Management System is a Java-
based console application that enables users to store, manage, and retrieve contact details
effortlessly. With an intuitive interface, this system facilitates fundamental operations such as adding
contacts, searching for contacts by name, and displaying all saved contacts, ensuring users can
access information with ease.
The system is implemented using object-oriented programming (OOP) principles, which provide
structure and modularity to the application. At its core, the system consists of two main
components:
1. The Contact Class, which defines individual contact records, including essential details such
as name and phone number.
2. The ContactManager Class, which acts as the central controller, handling user interactions,
managing stored contacts, and ensuring smooth program execution.
This project leverages the Java Collections Framework, particularly the ArrayList, to dynamically
manage contacts. A menu-driven console guides users through the available options, allowing for
simple and efficient navigation. Furthermore, exception handling mechanisms prevent system
crashes due to invalid inputs, enhancing the overall reliability of the application.
By implementing this system, students and developers gain hands-on experience in core Java
programming concepts, including data structures, user input processing, exception handling, and
interactive system design. The project also highlights the importance of efficient data management,
making it a valuable learning resource for understanding practical applications of programming in
real-world scenarios. Future enhancements such as database integration, graphical interfaces
(GUIs), and cloud-based storage could further improve its usability and scalability, transforming it
into a fully functional contact management solution.
IMPLEMENTATION
The implementation of the Contact Management System involves developing a Java-based console
application that allows users to manage their contacts. The system is designed using object
oriented principles, ensuring modularity and easy scalability.
CODE:-
import java.util.ArrayList;
import java.util.Scanner;
this.name = name;
IMPLEMENTATION
this.phoneNumber = phoneNumber;
return name;
return phoneNumber;
@Override
}
IMPLEMENTATION
if (contact.getName().equalsIgnoreCase(name)) {
System.out.println(contact);
return;
if (contacts.isEmpty()) {
return;
System.out.println(contact);
while (true) {
System.out.println("4. Exit");
try {
switch (choice) {
case 1:
addContact();
break;
case 2:
searchContact();
break;
case 3:
displayContacts();
break;
case 4:
System.out.println("Exiting program.");
return;
default:
} catch (NumberFormatException e) {
manager.start();
}
CONCLUSION
The Contact Management System effectively demonstrates key concepts in Java programming, data
management, and user interaction. By utilizing object-oriented principles, such as encapsulation
and modular design, the system ensures structured storage and retrieval of contact details. The
application features a menu-driven interface, allowing users to efficiently add, search, and display
contacts while leveraging ArrayList for dynamic data management. Exception handling mechanisms
play a crucial role in maintaining the reliability of the system by preventing crashes due to incorrect
inputs, ensuring a seamless user experience.
Beyond its current capabilities, the system provides a strong foundation for future enhancements.
Potential improvements include database integration for persistent storage, graphical user
interfaces (GUIs) for better accessibility, and cloud synchronization for multi-device support.
Adding functionalities such as sorting, filtering, and advanced search options would further improve
usability. These advancements can transform the Contact Management System into a real-world
application, expanding its relevance beyond a console-based implementation.
Overall, this project highlights the practical applications of programming and software
development while reinforcing fundamental Java concepts. It serves as an excellent educational tool
for students, enabling hands-on learning in data structures, user input processing, and interactive
system design. The structured approach ensures scalability and maintainability, making the Contact
Management System a stepping stone toward more complex application development.