개발자교육

24_07_01 오늘의 수업내용

regnator 2024. 7. 1. 14:08
728x90
반응형

객체 메서드 호출 및 접근자 메서드 사용 예제

메서드 호출 예제

Test 클래스에서 생성된 객체를 통해 특정 메서드를 호출하는 예제:

class Test {
    public int addNumbers(int a, int b) {
        return a + b;
    }
}

Test testObject = new Test();
int result = testObject.addNumbers(5, 3);
System.out.println(result); // 출력: 8

 

접근자 메서드 사용 예제

   1. 필드 선언 및 접근자 메서드 작성

class User {
    private String uid;

    public void setUid(String uid) {
        this.uid = uid;
    }

    public String getUid() {
        return uid;
    }
}

 

   2. User 객체 생성 및 메서드 호출

User u01 = new User();
u01.setUid("id001");
System.out.println(u01.getUid() + "<-리턴값");​

위 코드는 u01 객체의 uid 필드에 "id001" 값을 설정하고, getUid 메서드를 호출하여 값을 반환합니다.

 

이슈 및 해결 방법

1. 문제점: setUid 메서드가 필드 값을 설정하지 않음(실행시 입력값이 나오지않음)

public void setUid(String a) {
    System.out.println(a + "<-- a setUid User.java");
    // 필드에 값을 설정하지 않음
}

해결책: 필드에 값 설정 추가

public void setUid(String a) {
    System.out.println(a + "<-- a setUid User.java");
    this.uid = a;
}
 

2. 문제점: 필드와 매개변수 이름이 같을 때 지역 변수로 인식(똑같이 실행시 입력값이 나오지 않음)

public void setUid(String uid) {
    System.out.println(uid + "<-- a setUid User.java");
    uid = uid; // 지역 변수로 처리됨
}

 

해결책: this 키워드 사용(이름이 같은 변수를 전역변수로 지정해주는 키워드)

public void setUid(String uid) {
    System.out.println(uid + "<-- a setUid User.java");
    this.uid = uid;
}

 

3. 특정 타입의 접근자 메서드 규칙

boolean 타입의 접근자 메서드는 is로 시작

private boolean test;

public boolean isTest() {
    return test;
}

public void setTest(boolean test) {
    this.test = test;
}

 

VO(Value Object) 혹은 DTO(Data Transfer Object)의 전역변수의 입력값 알아보기

  • VO,DTO : 데이터를 세팅 혹은 겟팅하는 클래스를 지칭(bean)
@Override
	public String toString() {
		return "User [uid=" + uid + ", upw=" + upw + ", uphone=" 
        + uphone + ", ugender=" + ugender + ", uage=" + uage + ", ulevel=" + ulevel + "]";
	}
    
-------------------------------------------------------------------
System.out.println(u01.toString() + "<-- u01");
// User [uid=id001, upw=pw001, uphone=010-0001, ugender=남, uage=20, ulevel=구매자]<-- u01

 

 

요약

  • 메서드 호출: 객체를 통해 메서드를 호출하고 결과를 반환.
  • 접근자 메서드: setUid, getUid 메서드를 사용해 uid 필드를 설정하고 접근.
  • this 키워드 사용: 필드와 매개변수 이름이 같을 때 필드를 구분하기 위해 사용.
  • 특정 타입 규칙: boolean 타입은 is로 시작하는 접근자 메서드를 사용.
728x90
반응형