프로그래밍

자바 상속 응용 질문

public class Aclass{

     public void method1(){

          System.out.println("A");

     }

}

public class Bclass extends Aclass{

     @Override

     public void method1(){

          System.out.println("B");

     }

     

     public void method2(){

          System.out.println("C");

     }

}

public class ExtendsTest{

     public static void main(String[] args){

          Bclass c1 = new Bclass();

          Aclass c2 = new Bclass();// Bclass 객체를 넣지만 Bclass는 Aclass를 상속받고 있기 때문에 Aclass객체로 대체(?)된다

          

          c1.method1();
          c1.method2();

          c2.method1();

          c2.method2(); //c2변수는 Aclass객체가 들어 있기 때문에 Bclass에 있는 method2는 사용할 수 없다.

     }

}

 

상속된 클래스 객체 생성을 대충 주석부분처럼 이해하고 있는데

 

아무리 생각해봐도 주황색 부분처럼 써야하는 상황 자체가 떠오르질 않는데

 

혹시 아는사람 있으면 예시 몇개좀 던져줄 수 있음??

7개의 댓글

2019.07.20

대체되는게아니라 Aclass()에서 사용할 수 없는 메소드를 제외하고 Bclass()를 사용한다가 맞지 않을까

0
2019.07.20
@화성암

음.... 그게 좀 더 맞겠네

 

근데 저럴거면 그냥 A클래스 그 자체를 new로 할당하는게 낫지 않나 싶어서...

 

아님 클래스 자료형 자체를 넓게 쓰려면 저렇게 하는게 나은건가?

0
2019.07.20
@화성암

B클래스는 A클래스를 상속받고 있으므로 B클래스로 정의 내릴순 있는데 위에 문장과 같이 정의하면 그냥 Aclass 요소밖에 못쓰는거지

0
2019.07.20
[삭제 되었습니다]
2019.07.20
@돈없는공대생

ㄳㄳ 정독하러 감

0

음..푸시발송 메소드 만들때 예를 들 수 있겠네

Push객체를 상속하여 send 메소드를 오버라이딩한

IOS객체랑 Android객체를 만들고

파라미터로 Push객체를 받아서 send메소드 실행하는 메소드를 만들어 놓으면

파라미터로 IOS객체를 넘기면 IOS객체에서 오버라이딩한 send메소드가 실행되고, Android객체를 넘기면 Android객체에서 오버라이딩한 send메소드를 실행하게 할 수 있음~

 

0
2019.07.23

니가 오토체스를 만든다고 쳤을때

 

Chess chess = new Goblin()

 

chessList.put(chess);

 

 

for c in chessList:

c.attack();

 

이럴때씀

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180599 [모바일] 아이패드 저장공간 질문 가나가다라 0 16 분 전 8
180598 [컴퓨터] 150~200 4K 게이밍 견적 부탁 드려봅니다 2 라면死리 0 42 분 전 21
180597 [잡담] sn850x 1tb 방열판 없어도 괜찮죠?? 6 김빵순 0 1 시간 전 45
180596 [컴퓨터] Am5 메인보드 asrock b650m pg lightning vs gigabite b650m-k 6 죽업 0 3 시간 전 66
180595 [컴퓨터] 올해 잘한거 펩타이드 1 8 시간 전 125
180594 [모바일] s21 3년째쓰다가 s24 울트라로바꾸고 느낀점 5 마법부오러사무국장 0 9 시간 전 484
180593 [견적] 중고 노트북 한번바조요 5 쯔네이 0 10 시간 전 130
180592 [컴퓨터] 간헐적 모니터 화면 깜빡거림은 왜생기는걸까요? 19 파라다이스 0 12 시간 전 150
180591 [모바일] 태블릿사서 사용용도 11 오브 0 13 시간 전 271
180590 [컴퓨터] 배그 멈춤현상 도와주세요(내용수정하였습니다,) 12 크크르삥뽕 0 14 시간 전 113
180589 [컴퓨터] 드디어 컴퓨터 다 샀다ㅜㅜㅜ 24 뽀삐뽀삐 0 16 시간 전 290
180588 [견적] 9700k 쓰고 있는데 컴퓨터 업글하려면 라이젠 뭐 사는게 좋음? 11 쪄까튼쎼쌍 0 20 시간 전 184
180587 [컴퓨터] jpg 열화 막는법? 7 정병장기입원 0 22 시간 전 247
180586 [모바일] 윈도우pc와 아이폰 사진연동 안되나? 4 cw 7 0 23 시간 전 117
180585 [견적] 개붕이 견적 도와죠요 3 가기그게그거 0 1 일 전 83
180584 [모바일] 이거 삼전케어플러스로 넘어가야할정도임? 2 마법부오러사무국장 0 1 일 전 236
180583 [컴퓨터] 모니터 이상함 1 띵똥이 0 1 일 전 85
180582 [모바일] A25가 그렇게 별로임?? 7 울그락푸르락 0 1 일 전 170
180581 [컴퓨터] 독거미 도착함 12 쿠쿠N취킨 1 1 일 전 305
180580 [잡담] 님들도 데스크테리어 해보쉴? 18 냐하하하하 0 1 일 전 345