-
자바 초보자를 위한 Constructor (생성자) 활용법 – 주소록 프로그램 만들기☕Java 2024. 12. 11. 14:33728x90
자바를 처음 배우는 분들을 위해, 생성자(Constructor)를 활용한 간단한 주소록 프로그램을 만들어보겠습니다. 이 프로그램은 이름, 전화번호, 주소를 저장하고 관리하는 기능을 갖추고 있습니다.
1. Member 클래스 정의하기
먼저, Member라는 클래스를 만들어서 이름, 전화번호, 주소를 저장해보겠습니다.
public class Member { String name; // 이름 String tel; // 전화번호 String address; // 주소 // 기본 생성자 public Member() { } // 매개변수가 있는 생성자 public Member(String name, String tel, String address) { this.name = name; this.tel = tel; this.address = address; } // 정보 출력 메소드 void printInfo() { System.out.println("이름: " + name); System.out.println("전화번호: " + tel); System.out.println("주소: " + address); } }
설명:
- 필드: name, tel, address는 각각 이름, 전화번호, 주소를 저장합니다.
- 기본 생성자: 아무런 매개변수도 받지 않는 생성자입니다. 객체를 생성할 때 초기값을 설정하지 않아도 됩니다.
- 매개변수가 있는 생성자: 객체를 생성할 때 이름, 전화번호, 주소를 바로 설정할 수 있습니다.
- printInfo() 메소드: 멤버의 정보를 출력합니다.
2. MemberTest 클래스 (메인 클래스) 작성하기
이제, MemberTest라는 메인 클래스를 만들어서 Member 객체를 생성하고 활용해보겠습니다.
public class MemberTest { public static void main(String[] args) { // 기본 생성자를 사용하여 객체 생성 후 필드 설정 Member m1 = new Member(); m1.name = "홍길동"; m1.tel = "010-1111-2222"; m1.address = "경기도 성남시"; m1.printInfo(); System.out.println(); // 매개변수가 있는 생성자를 사용하여 객체 생성 Member m2 = new Member("김나나", "010-2222-5555", "경기도 광주시"); m2.printInfo(); System.out.println(); // 주소 정보 없이 객체 생성 후 나중에 주소 설정 Member m3 = new Member("김영수", "010-3333-4444", null); m3.address = "서울특별시 강남구"; m3.printInfo(); } }
설명:
- m1 객체: 기본 생성자를 사용하여 객체를 생성한 후, 각각의 필드를 설정합니다.
- m2 객체: 매개변수가 있는 생성자를 사용하여 객체를 생성하면서 필드를 초기화합니다.
- m3 객체: 매개변수가 있는 생성자를 사용하지만, 주소는 나중에 설정합니다.
실행 결과:
이름: 홍길동 전화번호: 010-1111-2222 주소: 경기도 성남시 이름: 김나나 전화번호: 010-2222-5555 주소: 경기도 광주시 이름: 김영수 전화번호: 010-3333-4444 주소: 서울특별시 강남구
요약:
- 생성자(Constructor): 클래스의 객체가 생성될 때 호출되는 특별한 메소드로, 객체의 초기화를 담당합니다.
- 기본 생성자: 매개변수가 없는 생성자입니다.
- 매개변수가 있는 생성자: 객체를 생성할 때 필요한 값을 바로 설정할 수 있는 생성자입니다.
이렇게 하면, 자바의 생성자를 활용하여 간단한 주소록 프로그램을 만들 수 있습니다. 생성자를 사용하면 객체를 생성할 때 초기값을 설정할 수 있어 편리합니다.
728x90'☕Java' 카테고리의 다른 글
Java 추상(Abstract) 클래스와 인터페이스(Interface): 개념 잡고 활용하기 (0) 2024.12.16 Java 상속이란? + 문제풀이 (1) 2024.12.15 🖥️ 자바에서 명령어가 메모리를 활용하여 구동되는 원리 (완전 쉬운 설명!) (0) 2024.12.10 Java 객체지향 프로그래밍으로 책 정보 관리 시스템 구현하기 (0) 2024.12.10 Number 클래스 설명 및 프로그램 동작 원리 (0) 2024.12.10