github.com/taemin-kwon93 Github 보러가기 ->

Study/[국비지원 일지] 2021.05.21 - 2021.12.29

[국비지원 일지]21.06.03

태민Kwon 2021. 6. 3. 21:01

21.06.03

 

15:10 - 학원도착, 카드출결 완료

 

 

_1교시

15:30 - 수업시작, 7장 상속(다형성_polymorphism)

 

 

_2교시

16:30 - 수업시작, 

16:40 - 다형성과 배열의 조합

---------------------------------------

package sec07.exam03_field_polymorphism;

public class Car {

//필드

Tire frontLeftTire = new Tire("앞왼쪽", 6);

Tire frontRightTire = new Tire("앞오른쪽", 2);

Tire backLeftTire = new Tire("뒤왼쪽", 3);

Tire backRightTire = new Tire("뒤오른쪽", 4);

 

//생성자

 

//메소드

int run() {

System.out.println("[자동차가 달립니다.]");

if(frontLeftTire.roll()==false) { stop(); return 1; };

if(frontRightTire.roll()==false) { stop(); return 2; };

if(backLeftTire.roll()==false) { stop(); return 3; };

if(backRightTire.roll()==false) { stop(); return 4; };

return 0;

}

 

void stop() {

System.out.println("[자동차가 멈춥니다.]");

}

}

----------------------------------------/아래 내용 비교

 

package sec07.exam04_array_management;

public class Car {

//필드

Tire[] tires = {

new Tire("앞왼쪽", 6),

new Tire("앞오른쪽", 2),

new Tire("뒤왼쪽", 3),

new Tire("뒤오른쪽", 4)

};

 

//메소드

int run() {

System.out.println("[자동차가 달립니다.]");

for(int i=0; i<tires.length; i++) {

if(tires[i].roll()==false) { 

stop(); 

return (i+1); 

} 

}

return 0;

}

void stop() {

System.out.println("[자동차가 멈춤니다.]");

}

}

---------------------------------------

 

 

17:02 - 부모객체에서 자식객체를 가져와 쓸때는 강제변환이 필요하다.

Parent parent = new Child();

parent.field1 = "data1";

parent.method1()'

Child child = (Child)parent //변환이 필요하다

child.field2 = "yyy"

 

단 ,instanceof를 사용해서 자식타입이 맞는지 확인을 해야한다.

if(parent instanceof Child) //true일시 아래 문장 실행.

{Child child = (Child)parent;

System.out.println("method1 - Child로 변환 성공")}

else{System.out.println("method1 - Child로 변환되지 않음")}

1 부모객체에서 자식객체를 가져와 쓸때는 강제변환이 필요하다.

2 단 ,instanceof를 사용해서 자식타입이 맞는지 확인을 해야한다.

 

 

_3교시

17:30 - 수업시작, 실습시작.

 

 

_4교시

19:00 - 수업시작, 추상클래스 수업진행.

19:13 - 추상 메소드와 오버라이딩(재정의)

메소드 이름이 동일하지만, 실행 내용이 실체 클래스마다 다른 메소드.

19:20 - 추상클래스의 편의점은 추상메소드에 있다.

 

_5교시

20:00 - 수업시작, 실습시작

 

 

[6월 3일 업데이트]

-생성자 복습하기(생성자는 왜 필요하며, 어떻게 쓰이는가)
-이해가 안됐던 부분 '다형성'

-다형성은 꼭 완벽하게 이해하고 넘어가야 합니다. 이후에도 많이 쓰이는 내용입니다.

-8 말부터 프로젝트 슬슬 준비할 예정입니다.