[JAVA]/07. 객체지향

18. 객체 설계도

76beny 2022. 4. 10. 21:19

목차

- 객체 설계도

- 1. 속성부_ 변수선언

- 2_1. 인자없는 생성부

-2_2. 인자있는 생성부

- getter&setter

-전체


객체 설계도 == 붕어빵 틀

■ ValueObject : VO로 읽고, 데이터만 있는 객체를 표현■ VO 객체에서는 멤버변수는 private로 접근제한 -> 외부에서 직접 변수 접근 불가!

 

1. 속성부 (Feild) _ 변수 선언

private String name; // 이름
private int age; 	// 나이
private String phoneNum; // 전화번호
private String pID; 	 // 주민번호

■ private로 이름 못건들게 하는 기능

 

2_1. 인자 없는 생성부

public Person2() { // 생성자
		name = "이름 없음";
	}

 

2_2. 인자있는 생성부

방법1 (잘 사용 X=>번거롭다)

■ 1. 지역변수, 로컬변수의 이름을 일치 시키지 않는 방법

public Person2(String _name, int _age, String _phoneNum, String _pID) {
	name = _name;
	age = _age;
	phoneNum = _phoneNum;
	pID = _pID;
}

■ 방법2 ( 주로 사용!)

■ 2. this 키워드를 통해 멤버변수 접근!

public Person2(String name, int age, String phoneNum, String pID) {
		// 생성할때 객체의 초기값을 입력받는 생성자
		this.name = name;
		this.age = age;
		this.phoneNum = phoneNum;
		this.pID = pID;
	}

 

 

3. getter & setter 선언

■ getter : 읽기전용

■ setter : 쓰기전용 (수정 가능한 변수)

	// getter - 이름 - readOnly
	public String getName() {
		return name;
	}
	
	// setter - 전화번호 - 수정가능한 변수
	public void setPhoneNum(String phoneNum) {
		this.phoneNum = phoneNum;
	}

* 단축키 : alt + shift + S

 

전체

package com.kh.ex03.object_app;
public class Person2 {
//속성부
	private String name; 
	private int age; 	
	private String phoneNum; 
	private String pID; 	 
	
//기본생성부
	public Person2() { 
		name = "이름 없음";
	}
    
//매개변수 있는 생성부
public Person2(String name, int age, String phoneNum, String pID) {
	this.name = name;
	this.age = age;
	this.phoneNum = phoneNum;
	this.pID = pID;
	}
    
//getter & setter
	public String getName() {
		return name;
	}
    public void setPhoneNum(String phoneNum) {
		this.phoneNum = phoneNum;
	}
//출력부
    public String toString() {
		String result = "";
		result += "이름 : " + name +"\n";
		result += "나이 : " + age +"\n";
		result += "전화번호 : " + phoneNum +"\n";
		result += "주민번호 : " + pID +"\n";
		return result;
	}
	
}// 이후에 Run.java생성해서 출력

 


"본 인터넷 사이트 내의 모든 이미지, 문구, 콘텐츠, 내용 등에 대한 저작권은 76beny에게 있습니다.

이를 무단으로 도용, 복사, 전재, 재배포, 2차 변형 등을 할 경우

민, 형사상 법적 조치 등 저작권법에 의거하여 처벌 받을 수 있습니다."