본문으로 바로가기

Chap06_Class&Method

category Programming/JAVA 2017. 3. 7. 11:45

클래스(Class)?

1. 클래스는 객체를 만들기 위한 설계도(틀, 도면)이다.

2. 자바는 클래스 단위로 프로그래밍을 한다.

3. 클래스를 구성하는 것을 멤버(member)라고 한다.

4. 멤버 = 속성(멤버필드(변수)) + 기능(멤버메서드)

  - 속성 : 멤버변수(필드) - 클래스 특징 - 명사

  - 기능 : 멤버메서드 - 클래스 행위 - 동사

5. 클래스 구성 : 클래스 해더, 멤버필드(변수, 상수), 멤버메서드, 생성자

 

[형식]

[접근지정자] class 클래스이름 {

멤버변수(멤버필드);

생성자();

멤버메서드 {   }

}

- 클래스 이름 : 식별자(대문자로 시작)

 

 

Ex01

 

 

 

 

 

 

Ex02

 

 

1. 클래스 객체 생성 과정

   형식) 클래스명 참조변수 = new 클래스명() => (X)

         클래스명 참조변수 = new 생성자() => (O)

 

2. 생성자(Constructor)?

- 클래스를 대상으로 객체를 생성하는 역할.

- 클래스 이름과 동일.

- 클래스에 포함되어 있으며, 객체를 생성할 때 딱 한번만 호출된다.

- 클래스는 생성자를 통해서 객체로 생성된다.

   생성자 형식) 생성자 이름([매개변수, 인자]) {

실행문;

  }

- 메서드 형태를 갖는다.

  -> 리턴타입(X), void(X), 매개변수(O)

- 모든 클래스는 반드시 1개 이상의 생성자를 갖는다.

- 사용자가 생성자를 정의하지 않으면 JVM이 컴파일 시점에서 자동으로 기본생성자를 만든다.

 

3. 생성자의 목적 : 멤버필드(변수와 상수)들의 초기화를 목적으로 사용한다.

 

4. 생성자의 특징 : 1) 생성자 이름 == 클래스 이름

   2) 메서드와 다르게 변환형이 없다.

   3) 클래스는 반드시 한 개 이상의 생성자를 갖는다.

   4) 생성자 오버로딩이 가능(즉, 여러개의 생성자가 존재할 수 있다.)

   5) 생성자가 보이지 않으면 기본 생성자가 숨어 있다.

   6) 기본생성자라 함은 매개변수가 없는 생성자를 뜻한다.

   7) 기본생성자 외의 다른 생성자를 만들면, 숨어 있던 기본생성자는 사라진다.

   8) 기본 생성자 외의 다른 생성자를 만들면, 무조건 기본 생성자를 만들어 주어라. (만들지 않으면 상속에서 문제가 발생.)

 

 

 

 

 

 

 

Ex03

 

클래스(Class)와 객체(Object)

 

- 클래스 : 객체를 정의해 놓은 것(추상화)

- 객체 : 클래스에 의해서 만들어진 결과물(실제화)

   예) 제품 설계도(클래스) -> 제품(객체)

- 인스턴스화 : 클래스를 이용하여 객체를 생성하는과정

  => 클래스(1) : 객체(n)

 

 

 

 

 

 

 

 

 

Ex04

 

캡슐화(Encapsulation)?

 

- 정보 은닉 : 클래스의 멤버 접근 제어 기법

- private : 외부에서 직접 접근을 차단함.

- bublic : 모든 클래스에서 접근 가능.

- setter() / getter()

   -> setter() : 지정자 메서드

   -> getter() : 획득자 메서드

 

 

 

 

 

'Programming > JAVA' 카테고리의 다른 글

Chap05_Array  (0) 2017.03.05
Chap05_Array  (0) 2017.03.02
Chap04_Control  (0) 2017.02.28
Chap04_Control  (0) 2017.02.28
Chap03_Control (키보드로 입력 받기)  (0) 2017.02.13