Java 이론

클래스 내부 구성 요소 #1 (필드 / 메서드 / 생성자)

ss__0 2022. 6. 1. 13:54

 필드

  • 객체의 속성값을 지정할 수 있는 클래스에 포함변수
  • 클래스 {...}에서 선언
  • Heap 메모리에 저장 → 객체(Obect)가 Heap 메모리에 저장되는데 필드는 객체 속에 저장되므로.
  • 미입력시 강제 초기화 : 빈칸으로 존재할 수 없으며 디폴트 초기값이 강제 설정
  • 기본자료형(숫자 디폴트 값 :0), boolean (디폴트 값:false), 참조자료형(디폴트 값 : null)

[비교] 지역변수

  • 메서드에 포함변수
  • Stack 메모리 저장
  • 메서드가 호출될 때만 생성 
  • 메서드 실행 완료시 Stack메모리에서 삭제 → 생명 주기가 끝나면 자동으로 삭제
  • 강제 초기화 (X)

 

 메서드

수식어 빨간색 필수 요구사항
public static int sum ( int a, int b ) {   //메서드 내용   }
접근지정자 객체 생성없이 사용 가능 리턴(반환)
타입
메서드 이름 (입력 매개변수){....}
  • 리턴(반환) 타입 
    • 메서드 완료 후 반환되는 타입
    • 반환값이 있는 경우(=리턴 타입이 void가 아닌 경우) 메서드 내에 return이 존재해야 함
    • 반환값이 없는 메서드는 리턴타입이 void로 선언
    • 리턴 타입이  void 경우에도 메서드 내에 return 사용 가능(단, 리턴값 없이 return만 사용(메서드 종료))
  • 메서드 이름 : 변수의 이름 규칙과 동일하게 적용
  • 입력매개변수 : 메서드에 전달되는 값
  • 메서드 정의 시 : (), {} 사용
  • 메서드 호출 시 : () 사용
void prointMonth(int m){
	if(m<0 || m>12){
    System.out.println("잘못된 입력");
    return;	// 메서드 종료
    }
    System.out.println(m + "월 입니다.");
 }

▶ 클래스 외부 메서드 호출

       step 1 . 객체 생성 (붕어빵을 먼저 만듦)

       step 2 . 참조변수로부터 메서드 호출

 

▶ 클래스 내부 메서드 호출

       step 1 . 메서드 이름으로 바로 호출

  • 매개변수가 있는 메서드(void num(int a))는 메서드 호출시 매개 변수 선언 및 변수 값 대입을 가장 먼저 수행
  • 선언과 값의 대입이 불가능!
  • static 메서드에서는 static 에서만 호출 가능

▶ 기본자료형 & 참조 자료형 매개변수의 값 변화

  • 기본 자료형 : 복사본을 변화시키므로 원본의 값에는 변화가 없다
  • 참조 자료형 : 번지 값을 넘기는 것이므로 원본의 값도 변함

※ Arrays.toString(1차원 배열) → 배열값 출력 정적 메서드 

 생성자

 

'Java 이론' 카테고리의 다른 글

클래스와 객체  (0) 2022.06.01