[JAVA] class - 2

hi·2022년 1월 7일
0

1. class import

같은 패키지 : 자동 import되므로 생략
다른 패키지 : import 패키지명.클래스명;

2. 멤버변수에 접근하기

1. static + 멤버변수 / 메서드

  • static 이 붙은 경우 '클래스명.' 으로 접근 권장
// 1.직접 접근 : 변수
System.out.println("책 가격 : "+Book.BOOKPRICE);

// 2.간접 접근 : 접근 가능한 메서드를 통해서
System.out.println("책 가격 : "+Book.getBookprice());  

2. 멤버변수 / 메서드

  • static 이 없는경우 생성자 호출 👉 객체 생성
  • private 멤버는 다른 클래스에서 접근 불가
    => 접근 가능한 메서드를 통해 간접 접근 (get , set)
// private 멤버 : get 메서드로 접근
b1.getBookAuthor();
        
// 멤버 변수의 값 출력-1
System.out.println("책 바코드=" + b1.bacode + ", 
책 제목=" + b1.bookName + ", 
책 저자=" + b1.getBookAuthor() + ", 
책 가격=" + Book.BOOKPRICE);
		
// 멤버 변수의 값 출력-2 : void 타입 메서드
b1.showBookInfo();
		
// 멤버 변수의 값 출력-3 : 객체의 값을 리턴하는 
   재정의된 toString() 메서드 호출	 
System.out.println(b1); 			// 같은 결과
System.out.println(b1.toString()); 		// (같은 결과)

3. 초기화 블럭

{
    //인스턴스 초기화 블럭
}


static {
    //클래스 초기화 블럭
}
  • 인스턴스 초기화 블럭
    인스턴스 변수의 복잡한 초기화에 사용
    생성자가 호출되기 직전 초기화 블록이 실행됨

  • 클래스 초기화 블럭
    클래스 변수의 복잡한 초기화에 사용
    static 멤버 변수에 초기값을 적용

0개의 댓글