• 클래스는 새로운 데이터 타입을 만드는 데이터 타입 생성기이다.
  • 데이터 타입 변수와 상수의 구조
    • 클래스 : 무
    • 데이터 타입 : 무 존재
    • 변수 : 존재
    • 상수 : 실존
  • 클래스는 데이터 타입을 만들며 리고 데이터 타입은 변수를 생성하며 변수에는 상수를 할 할 수 있다. 클래스는 새로운 데이터 타입을 만드는 데이터타입 생성기이다.
  • 클래스가 구조체보다 강력한 점은 접근 제어, 상속의 개념 그리고 메서드의 활 용 부분이 클래스에 추가 되었다는 점이다.
  • 메모리 가 있느냐 없느냐는 자바를 공부할 때 아주 중요한 부분을 차지한다. 프로 램할 때 가장 많이 접하 게 되는 에러가 바로 메모리가 없다는 Null Point Exception이다.
  • 일반적인 클래스의 설명은 은폐성, 상속성, 다형성의 관점에서 클래스를 설명하고 있다.
  • 접근제어는 새로운 데이터 타입을 만들고 데이터 타입으로 객체를 선언한 후, 객체 내의 변수에 값을 할 할 때 값을 직접 할 할 수 있는가 없는가를 결정한다.
  • 보통 이러한 접근제어를 자료의 은폐화(Encapsulation)이라고 표현한다. 이 은폐화는 아래와 같이 두 가지 측면에서 생각해 볼 수 있다.
    • 객체가 메모리가 생성 된 후 객체 내의 변수에 대한 접근제어
    • 상속 관계에서 아버지 클래스와 아들 클래스 간의 접근제어
  • 메서드는 변수의 역할을 그대로 한다는 것이다.
  • private 멤버필드에 접근하고자 한다면 public 메서드 밖에는 없을까. 거의 렇다고 보면 된다. private 멤버필드를 어떻게 하고 싶으면 public 메서드를 통하지 않고서는 방법이 없다.
  • private 멤버 필드를 사용하는 이유 ?
    • public 메서드의 역할은 외부에서 어떠한 데이터가 들어와도 public 메서드를 통해야 하기 때문에 public 메서드의 매개변수에 맞추어 데이터를 넣어야 하고 public 메서드의 작업을 통해 서 최종적으로 private 멤버필드에 들어간다면 private은 아주 정제된 데이터가 될 것이다.