Presentation is loading. Please wait.

Presentation is loading. Please wait.

클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)

Similar presentations


Presentation on theme: "클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)"— Presentation transcript:

1 클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
Section 2 생성자 오버로딩(Overloading) Section 3 예약어 this Section 4 메소드 Section 5 메소드 오버로딩(Overloading) Section 6 메소드에 값 전달(Argument passing) 방법

2 Section 1 생성자(Constructor)
클래스로부터 객체가 생성될 때 객체의 초기화 과정을 기술하는 특수한 메소드 생성자의 이름은 클래스의 이름과 반드시 같아야 한다 생성자의 한정자는 public을 사용한다. private로 지정하면 클래스 내부에서만 사용 가능한 생성자가 된다

3 Section 1 생성자(Constructor)
생성자 : 예 클래스 이름과 같다

4 Section 1 생성자(Constructor)

5 Section 2 생성자 오버로딩(Overloading)
하나의 클래스에 여러 개의 생성자를 중첩하여 사용 여러 개의 생성자를 사용할 경우 매개변수의 개수와 타입은 반드시 달라야 한다

6 Section 2 생성자 오버로딩(Overloading)
생성자 오버로딩 : 예

7 Section 2 생성자 오버로딩(Overloading)

8 Section 3 예약어 this this 2가지 형태로 사용 현재의 객체를 의미할 때 사용
클래스내의 다른 생성자를 호출할 때 사용

9 Section 3 예약어 this this 2가지 형태로 사용 : 현재의 객체를 의미할 때 사용
자신의 변수에 자신의 값을 복사

10 Section 3 예약어 this this 2가지 형태로 사용 : 현재의 객체를 의미할 때 사용

11 Section 3 예약어 this this 2가지 형태로 사용 : 클래스내의 다른 생성자를 호출할 때 사용
반드시 첫 번째 라인에 와야한다

12 Section 4 메소드 메소드 객체가 할 수 있는 행동을 정의 클래스의 기능을 정의하는 핵심
메소드는 일반적으로 소문자로 시작하는 것이 관례

13 Section 4 메소드 접근 한정자 멤버 변수의 접근 한정자와 같은 의미 접근 한정자 선언의 예

14 Section 4 메소드 접근 한정자 : 예 같은 패키지내의 클래스에서 사용 다른 패키지 클래스에서 사용

15 Section 4 메소드 접근 한정자

16 Section 4 메소드 접근 한정자

17 Section 4 메소드 클래스 메소드 클래스 변수와 같이 static을 사용하여 클래스 메소드 선언
클래스 이름을 통해서 클래스 메소드 호출 클래스 메소드 내에서는 클래스 변수만 사용 가능

18 Section 4 메소드 클래스 메소드

19 Section 4 메소드 final, abstract, synchronized 메소드
final로 선언된 메소드는 서브 클래스에서 오버라이딩(overriding)될 수 없음을 의미한다(8장). abstract로 선언된 메소드는 추상 메소드. 추상 메소드는 선언 부분만 가지고 몸체 부분이 없는 메소드이다. 몸체 부분은 서브 클래스에서 오버라이딩된다(8장). synchronized 메소드는 스레드를 동기화할 수 있는 기법을 제공하는 메소드이다(10장).

20 Section 4 메소드 메소드 반환 값(return value)
메소드 선언부에 메소드가 반환하는 값의 타입(형)이 지정되어야 한다 반환값이 없는 경우에는 “void”로 지정한다

21 Section 4 메소드 메소드 반환 값(return value)

22 Section 5 메소드 오버로딩(Overloading)
생성자 오버로딩과 같은 개념 같은 이름의 메소드를 중첩하여 선언(매개변수의 개수와 타입을 달라야 한다) 객체지향의 특성인 다형성을 제공

23 Section 5 메소드 오버로딩(Overloading)

24 Section 5 메소드 오버로딩(Overloading)

25 Section 6 메소드에 값 전달(argument Passing) 방법
자바는 메소에 값을 전달하는 기법으로 값-전달(call by value) 기법을 사용 call by value 실 매개변수의 값을 형식 매개변수에 복사해 주는 방식 실 매개 변수의 형(기본자료형 또는 참조자료형)에 따라 다르게 작동

26 Section 6 메소드에 값 전달(argument Passing) 방법
call by value 기법 : 기본 자료형인 경우

27 Section 6 메소드에 값 전달(argument Passing) 방법
call by value 기법 : 참조 자료형인 경우

28 Section 6 메소드에 값 전달(argument Passing) 방법
메소드에 값 전달 기법

29 생성자 생성자 오버로딩 Chapter 7 학습정리
① 생성자는 클래스로부터 객체가 생성될 때 초기화 과정을 수행하는 메소드이다. ② 생성자를 생성자 메소드로 부르기도 한다. ③ 생성자의 이름은 클래스 이름과 동일해야 한다. 생성자 오버로딩 ① 하나의 클래스에 같은 이름의 생성자를 중첩하여 선언하는 것을 생성자 오버로딩이라 한다. ② 오버로딩되는 생성자는 매개변수의 개수와 타입이 반드시 달라야 한다. ③ 생성자 오버로딩은 객체지향의 다형성을 구현한다.

30 예약어 this 메소드와 오버로딩 Chapter 7 학습정리 ① this 예약어는 현재의 객체를 의미한다.
① 메소드는 클래스의 핵심인 기능을 나타내는 부분이다. ② 메소드의 접근 한정자는 객체변수의 접근 한정자의 의미와 같다. ③ 클래스 메소드는 클래스 이름을 통해 접근 가능하며, 클래스 메소드내에서는 클래스 변수만을사용할 수 있다. ④ 메소드는 기본 자료형 뿐만 아니라 참조자료형인 객체도 반환할 수 있다. ⑤ 메소드 역시 생성자와 같이 중첩 사용될 수 있으며, 중첩된 메소드는 매개변수의 개수와 타입이 반드시 달라야 한다.

31 메소드에 값 전달 기법 Chapter 7 학습정리
① 자바는 메소드 호출 시 매개변수에 값을 전하기 위해 값-전달(call by value) 방법을 사용한다. ② 값-전달 기법은 실매개 변수의 값을 형식매개변수에 복사하는 기법이다. ③ 값-전달 기법에서 사용되는 매개변수의 형이 기본 자료형일 경우에는 실제 값이 복사되어 전달되지만, 참조자료형인 경우에는 주소가 복사되어 전달된다. ④ 참조자료형인 경우에 주소가 전달되므로 결국 실매개변수와 형식매개변수가 같은 객체를 가르키게 된다. 이 경우 형식매개변수의 값이 변화되면 실매개 변수의 값도 변화된다.


Download ppt "클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)"

Similar presentations


Ads by Google