[Java] 객체지향 (3) 필드와 메서드

lkc9898·2022년 5월 16일

Java

목록 보기
13/25
post-thumbnail

필드(Field)

'클래스에 포함된 변수'를 의미하며 객체의 속성을 정의할 때 사용된다. 자바에서 변수는 클래스 변수, 인스턴스 변수, 지역 변수 세 가지로 구분될 수 있고 이 중 필드라 부르는 것은 클래스 변수와 인스턴스 변수이다. 이 둘은 static키워드의 유무로 구분하는데 static 키워드가 함께 선언된 변수는 클래스 변수, 그렇지 않은 것은 인스턴스 변수 이다. 이 두 가지 변수 유형에 포함되지 않고 메서드 내에 포함된 모든 변수를 지역 변수라고 한다.

코드 예시

class Example {
	int instanceVariable; // 인스턴스 변수
    static int classVariable; // 클래스 변수
    
    void method() {
    	int localVariable = 0; // 지역 변수 {} 안에서만 유효
    }
}

static 키워드

  • 필드에 static을 붙여줄 경우, 메모리를 정적으로 사용한다.
  • 메서드에 static을 붙여줄 경우, 객체의 생성 없이 호출이 가능하며, 객체에서는 호출 할 수 없다.

메서드(Method)

메서드는 "특정 작업을 수행하는 일련의 명령문들의 집합"을 의미하며 클래스의 기능에 해당하는 내용을 담당한다.

자바제어자 반환타입 메서드명(매개 변수) { // 메서드 머리
	메서드 내용 //메서드 몸통
}

메서드를 머리와 몸통으로 구분하여 메서드 머리에는 어떤 타입을 반환하는지(반환 타입), 메서드 이름이 무엇인지(메서드명), 해당 작업을 수행하기 위해 어떤게 필요한지(매개 변수)를 포함하고 메서드 몸통에는 해당 메서드가 호출되었을 때 수행되어야하는 일련의 작업들을 표시한다.

코드 예시

public static int add(int x, int y) { 
	int result = x + y;
    return result;
}

void printHello() {
	System.out.println("hello!")
}
//반환 타입이 void, 즉 반환 값이 없는 메서드를 의미한다.

int getNumSeven() {
	return 7;
}
// int 타입의 결과값을 반환하는 매개변수가 없는 메서드
// 메서드가 호출되면 숫자 7을 반환하면 되기 때문에 따로 매개변수가 필요없다.

0개의 댓글