[Day 3 | Java] 인스턴스 메서드

y♡ding·2024년 10월 16일
0

데브코스 TIL

목록 보기
8/163

💡 정의

메서드는 클래스 내부에서 정의된 함수를 말한다. 클래스 내에서 특정 기능을 수행하는 코드의 모음이며, 중복되는 코드를 줄이고 유지보수를 쉽게 하기 위한 도구이다.이 기능이란, 데이터를 입력받고 처리한 후 결과값을 반환하는 것을 의미한다.

📣 메서드 선언

메서드의 이름을 정하고 중괄호 {} 안에 변수, 제어문, 실행문 등을 적는다.

🤙🏻 메서드명 규칙:

  • 메서드 이름은 동사로 짓는다.
  • 여러 단어가 섞이면, 첫 번째 단어는 소문자로 시작하고 이후 단어는 첫 문자를 대문자로 시작하는 카멜 케이스를 사용한다.

↩️ 리턴

메서드는 작업을 완료한 후 결과값을 반환할 수 있다. 이때 반환할 데이터의 타입을 리턴 타입이라고 한다.

// 예시
public int sum(int a, int b) {
    return a + b;  // int 타입의 리턴값
}

public void printMessage() {
    System.out.println("Hello!");  // void 타입, 리턴값 없음
}
  • 리턴값이 있는 경우: 메서드가 리턴할 값의 타입을 반드시 선언부에 명시해야 하며, 반환값과 반환 타입은 반드시 일치해야 한다.
  • 리턴값이 없는 경우: void로 선언하며, 이 경우 반환할 값이 없기 때문에 return 키워드 없이 메서드가 종료된다.

📌 리턴된 값은 메서드를 호출한 곳으로 다시 전달된다.


🗣️ 메서드 호출

메서드를 호출하려면 먼저 객체를 생성해야 한다. 메서드와 필드는 객체에 속해 있으므로, 객체가 없으면 메서드 역시 존재하지 않는다. 따라서, 객체 참조 변수를 통해 메서드를 호출한다.

// 객체 생성 후 메서드 호출
Person person = new Person();
person.getName();  // 객체 참조 변수를 통해 메서드를 호출

매개변수가 없는 메서드는 괄호 안에 아무것도 넣지 않지만, 매개변수가 있는 메서드는 인자를 전달해야 한다.


😄 메서드의 장점

  1. 코드의 재사용성
    메서드는 여러 번 호출될 수 있으므로, 반복적인 코드를 제거하고 모듈화할 수 있다. 한 번 선언된 메서드는 필요할 때마다 호출만 하면 된다.

  2. 유지보수의 용이성
    메서드를 사용하면 코드 수정 시 특정 메서드만 수정하면 되므로 유지보수가 쉽다.

  3. 입력에 따른 동작 변화
    메서드는 입력값에 따라 다른 결과값을 반환할 수 있어 동적인 프로그래밍이 가능하다.

🤔 메서드와 반복문

반복문도 여러 번 실행하는 코드의 묶음이지만, 메서드는 코드에 이름을 부여하여 더 모듈화된 형태이다. 메서드를 사용하면 코드를 더 구조적으로 작성할 수 있다.

  • 반복문은 같은 작업을 여러 번 수행하지만, 메서드는 작업을 미리 정의해두고 필요할 때 호출하여 사용할 수 있다. 메서드는 선언된 곳에서 실행되는 것이 아니라, 호출되는 시점에서 실행된다.

💻 메모리 구조

메서드는 객체가 생성될 때마다 메모리에서 서로 다른 위치에 저장된다. 인스턴스 메서드는 클래스의 인스턴스(객체)마다 독립적으로 동작하는데, 이는 각각의 객체가 독립적인 데이터를 가지고 있기 때문이다.

0개의 댓글

관련 채용 정보