Java교육 내용정리 7일차 10강

J3nn W·2022년 4월 20일
0
post-thumbnail

캡슐화(encapsulation)

클래스나 인스턴스를 이용해서 객체 지향 프로그램을 자유롭게 개발할수 있게 되고 , 때로는 인간이 개발하는 점에서 빈번한 실수가 발생하는데에 미리 방지를 하자는 방법에 캡슐화를 하는것이 방법이다.

예시) 1-1 일반 생성자로만 코드를 짠

void attack() {
        System.out.println(this.name + "는 공격했다!");
        System.out.println("적에게 5포인트의 데미지를 주었다 !");
        //  this.hp -= this.damage;
    }

    void sleep() {
        this.hp = 100; // this는 자기자신 을 표현
        System.out.println(this.name + "는 잠을 자고 회복했다 !");
        }
  1. 접근지정자 멤버에 대한 엑세스 제어

필드에 전부 private 선언
메소드는 전부 public 선언
별다른 이유가 없으면 public 선언

  1. Getter와 Setter
    모든 필드를 private로 지정해 다른 클래스로부터 접근이 안되도록 막는 기능이다. 메소드를 통해서 접근 하도록 클래스를 설계해야한다

get(변수) 이름에서 받은내용을 읽을수만 있음 (읽기전용)
set(변수) 에서 수정할수 있는 기능 (쓰기전용)

getter 와 setter를 쓰는 장점에는
1. 읽기전용 , 쓰기전용 필드에 구현
2. 필드의 이름 등 클래스의 내부 설계를 자유롭게 변경 가능
3. 필드의 액세스를 검사할 수 있음 (유효성검사 )

profile
New Dev. && NFT Artist

0개의 댓글