Top Banner
JAVA, Android 스터디 2015.04.07 김희준
42

Java, android 스터티2

Jul 18, 2015

Download

Education

Heejun Kim
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Java, android 스터티2

JAVA, Android 스터디

2015.04.07

김희준

Page 2: Java, android 스터티2

0. 지난주 복습

Page 3: Java, android 스터티2

0. 지난주 복습

Page 4: Java, android 스터티2

0. 지난주 복습

Page 5: Java, android 스터티2

0. 지난주 복습

Page 6: Java, android 스터티2

0. 지난주 복습

Page 7: Java, android 스터티2

0. 지난주 복습

Page 8: Java, android 스터티2

0. 지난주 복습

Page 9: Java, android 스터티2

0. 지난주 복습

Page 10: Java, android 스터티2

0. 지난주 복습

Page 11: Java, android 스터티2

0. 지난주 복습

Page 12: Java, android 스터티2

0.5 지난주 과제

홀수숫자만 있는 구구단 소용돌이

Page 13: Java, android 스터티2

1. 클래스

• 생성자의 특징

– 생성자는 메소드(생성자도 함수이다!!)

– 생성자 이름은 클래스 이름과 동일

– 생성자는 new를 통해 객체를 생성할 때만 호출됨

– 생성자도 오버로딩 가능

– 생성자는 리턴 타입을 지정할 수 없다.

– 생성자는 하나 이상 선언되어야 함

• 개발자가 생성자를 정의하지 않으면 자동으로 기본 생성자 정의됨

– 컴파일러에 의해 자동 생성

– 기본 생성자를 디폴트 생성자(default constructor)라고도 함

Page 14: Java, android 스터티2

1. 클래스(생성자)

Page 15: Java, android 스터티2

1. 클래스(생성자)

콘솔창에 출력시->

Page 16: Java, android 스터티2

• EX 1)

- 자신의 학번과 이름을 받을 수 있는 클래스를 만든다.

(학번 -> int형 , 이름 -> String 객체)

- 생성자 4개 만들기

( 그냥 생성, 학번을 가지고 생성, 이름을 가지고 생성,

학번과 이름을 가지고 생성)

- 학번 이나 이름을 안주고 만든 클래스는 0과”none”으로 초기화

1. 클래스(생성자)

Page 17: Java, android 스터티2

• EX 1)

- 자신의 학번과 이름을 받을 수 있는 클래스를 만든다.

(학번 -> int형 , 이름 -> String 객체)

- 생성자 4개 만들기

( 그냥 생성, 학번을 가지고 생성, 이름을 가지고 생성,

학번과 이름을 가지고 생성)

- 학번 이나 이름을 안주고 만든 클래스는 0과”none”으로 초기화

1. 클래스(생성자)

Page 18: Java, android 스터티2

1. 클래스(생성자)

힌트 :class (클래스명){ //클래스

(클래스명) (){ //생성자…..

}}

Page 19: Java, android 스터티2

1. 클래스(생성자)

힌트 :class (클래스명){ //클래스

(클래스명) (){ //생성자…..

}}

힌트 :class (클래스명){ //클래스

(클래스명) (){ //생성자this.(변수명) = …

}}

Page 20: Java, android 스터티2

1. 클래스(생성자)

Page 21: Java, android 스터티2

1. 클래스(생성자)

Page 22: Java, android 스터티2

2. 클래스(접근지정자)

Page 23: Java, android 스터티2

23

private 접근 지정자 사례

public 접근 지정자 사례

2. 클래스(접근지정자)

Page 24: Java, android 스터티2

protected 접근 지정자 사례

default 접근 지정자 사례

24

2. 클래스(접근지정자)

Page 25: Java, android 스터티2

2. 클래스(접근지정자)

• EX 2)

- EX1에서 작성한 프로그램을 이용해서 접근지정자 예제 실습

- 학번정보를 “private”로 설정 한다.

- 객체(인스턴스)생성시 기본생성자로 생성한다.

- 학번정보를 수정하고 얻을 수 있는 메소드 2개를 작성한다.

Page 26: Java, android 스터티2

2. 클래스(접근지정자)

• EX 2)

- EX1에서 작성한 프로그램을 이용해서 접근지정자 예제 실습

- 학번정보를 “private”로 설정 한다.

- 객체(인스턴스)생성시 기본생성자로 생성한다.

- 학번정보를 수정하고 얻을 수 있는 메소드 2개를 작성한다.

- 학번

Page 27: Java, android 스터티2

2. 클래스(접근지정자)

• EX 2)

- EX1에서 작성한 프로그램을 이용해서 접근지정자 예제 실습

- 학번정보를 “private”로 설정 한다.

- 객체(인스턴스)생성시 기본생성자로 생성한다.

- 학번정보를 수정하고 얻을 수 있는 메소드 2개를 작성한다.

Page 28: Java, android 스터티2

2. 클래스(접근지정자)

힌트 :class (클래스명){ //클래스

…….private (변수명)getNum // 메소드setNum // 메소드

}

Page 29: Java, android 스터티2

2. 클래스(접근지정자)

힌트 :class (클래스명){ //클래스

…….private (변수명)getNum // 메소드setNum // 메소드

}

힌트 :public int getNum(){

return …..}puvlic setNum(int st_number){}

Page 30: Java, android 스터티2

2. 클래스(접근지정자)

Page 31: Java, android 스터티2

• 객체 배열 생성 및 사용

31

3. 클래스(객체배열)

Page 32: Java, android 스터티2

32

public static void main(String [] args) {Person[] pa;pa = new Person[10];for (int i=0;i<pa.length;i++) {

pa[i] = new Person();pa[i].age = 30 + i;

}

for (int i=0;i<pa.length;i++)System.out.print(pa[i].age+” “);

}

30 31 32 33 34 35 36 37 38 39

3. 클래스(객체배열)

Page 33: Java, android 스터티2

3. 클래스(객체배열)

• EX 3)

- EX2에서 작성한 프로그램을 이용해서 객체배열 예제 실습

- 4개의 객체배열을 생성한다(기본생성자 이용)

- 객체배열에 학번값을 넣어준다.(20xxxxxxx0, 20xxxxxxx1 …)

- 학번값 출력

Page 34: Java, android 스터티2

3. 클래스(객체배열)

• EX 3)

- EX2에서 작성한 프로그램을 이용해서 객체배열 예제 실습

- 4개의 객체배열을 생성한다(기본생성자 이용)

- 객체배열에 학번값을 넣어준다.(20xxxxxxx0, 20xxxxxxx1 …)

- 학번값 출력

Page 35: Java, android 스터티2

3. 클래스(객체배열)

힌트 :(클래스명) (변수이름)[] = new (클래스명)[ … ]

Page 36: Java, android 스터티2

3. 클래스(객체배열)

힌트 :(클래스명) (변수이름)[] = new (클래스명)[ … ]

힌트 :for(….;….;…..)

{(변수이름)[] = 생성자…..…..

}

Page 37: Java, android 스터티2

3. 클래스(객체배열)

Page 38: Java, android 스터티2

• 클래스

- 클래스는 생성자를 이용해 상속 받을 때 초기화 시킬 수 있다.

- 오버로딩이 지원되므로 여러 개의 생성자를 이용 가능하다.

- 모두 사용할 수 있는 접근지정자 public

- 해당 클래스만 사용할 수 있는 접근지정자 private

- private인 경우 해당 클래스 내 public 메소드 이용 접근 가능

- 객체도 레퍼런스 변수이다.(포인터의 개념과 유사)

- 따라서 객체배열 생성시 2차원 배열이 생성된다.

4. 정리

Page 39: Java, android 스터티2

• EX 4 + HW2)

- 끝말잇기(228p) // 공연예약 시스템(237p) // 로또번호 추첨

- 위 세가지 과제 중 택 1하여 다음주 시연

- 시연 후, 알고리즘 및 코드내용 설명(주석 필요없음)

- 컨트롤 c + v 가능, 대신 설명가능 해야함.

- 클래스를(두 개 이상) 이용하여 구현하기

4. 정리

Page 40: Java, android 스터티2

• EX 4 + HW2) 샘플(끝말잇기)

4. 정리

Page 41: Java, android 스터티2

Q & A

Page 42: Java, android 스터티2

Thank you!!