반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- postorder
- classification
- 자료구조
- KNeighborsClassifier
- CES 2O21 참여
- html
- Keras
- 머신러닝
- bccard
- broscoding
- vscode
- paragraph
- 대이터
- web 개발
- web 용어
- inorder
- 웹 용어
- 결합전문기관
- java역사
- discrete_scatter
- web 사진
- 데이터전문기관
- pycharm
- CES 2O21 참가
- C언어
- cudnn
- tensorflow
- 재귀함수
- web
- mglearn
Archives
- Today
- Total
bro's coding
java.Polymorphism.ObjectCasting(캐스팅) 본문
반응형
Object Casting : 다형성 적용된 참조변수로 자식의 독자적 멤버(변수, 메서드)에 직접 접근 불가
> 접근을 위해 Object Casting을 적용
package step13;
// 다형성 적용시 확인해야 하는 사항
// Object Casting 필요성
class Animal {
public void sleep() {
System.out.println("자다");
}
public void eat() {
System.out.println("동물이 먹다");
}
}
class Person extends Animal {
public void eat() {
System.out.println("사람이 수저로 먹다");
}
public void study() {
System.out.println("사람이 공부하다");
}
}
public class TestPolymorphism4 {
public static void main(String[] args) {
// 다형성 적용 : 자식객체를 부모타입 변수에 참조
Animal a = new Person();
a.sleep();// 상속받은 부모메서드 사용 가능
a.eat();// 오버라이딩한 메서드 사용 가능
// a.study();// 자식의 독자적 멤버는 직접 접근 불가
// > 이유: a변수의 타입은 Animal이므로
// > 해결: a의 타입을 캐스팅
((Person) a).study();
}
}
반응형
'[IT] > java' 카테고리의 다른 글
java.Design pattern (0) | 2021.03.04 |
---|---|
java.abstract(추상화) (0) | 2021.03.04 |
java.final (0) | 2021.03.04 |
java.static(정적) (0) | 2021.03.04 |
java.Polymorphism.instanceof(객체 타입 비교) (0) | 2021.03.02 |
java.Polymorphism(다형성) (0) | 2021.03.02 |
java.annotation(어노테이션) (0) | 2021.03.02 |
java.overriding.toString (0) | 2021.03.02 |
Comments