프로그래밍

자바 상속 응용 질문

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
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180596 [컴퓨터] Am5 메인보드 asrock b650m pg lightning vs gigabite b650m-k 5 죽업 0 1 시간 전 43
180595 [컴퓨터] 올해 잘한거 펩타이드 0 6 시간 전 114
180594 [모바일] s21 3년째쓰다가 s24 울트라로바꾸고 느낀점 4 마법부오러사무국장 0 6 시간 전 421
180593 [견적] 중고 노트북 한번바조요 3 쯔네이 0 8 시간 전 115
180592 [컴퓨터] 간헐적 모니터 화면 깜빡거림은 왜생기는걸까요? 19 파라다이스 0 9 시간 전 146
180591 [모바일] 태블릿사서 사용용도 11 오브 0 11 시간 전 261
180590 [컴퓨터] 배그 멈춤현상 도와주세요(내용수정하였습니다,) 12 크크르삥뽕 0 12 시간 전 110
180589 [컴퓨터] 드디어 컴퓨터 다 샀다ㅜㅜㅜ 23 뽀삐뽀삐 0 14 시간 전 280
180588 [견적] 9700k 쓰고 있는데 컴퓨터 업글하려면 라이젠 뭐 사는게 좋음? 10 쪄까튼쎼쌍 0 18 시간 전 180
180587 [컴퓨터] jpg 열화 막는법? 7 정병장기입원 0 20 시간 전 239
180586 [모바일] 윈도우pc와 아이폰 사진연동 안되나? 4 cw 7 0 21 시간 전 115
180585 [견적] 개붕이 견적 도와죠요 3 가기그게그거 0 22 시간 전 83
180584 [모바일] 이거 삼전케어플러스로 넘어가야할정도임? 2 마법부오러사무국장 0 1 일 전 234
180583 [컴퓨터] 모니터 이상함 1 띵똥이 0 1 일 전 85
180582 [모바일] A25가 그렇게 별로임?? 7 울그락푸르락 0 1 일 전 166
180581 [컴퓨터] 독거미 도착함 12 쿠쿠N취킨 1 1 일 전 301
180580 [잡담] 님들도 데스크테리어 해보쉴? 18 냐하하하하 0 1 일 전 337
180579 [잡담] 논 rgb 구성으로 맞췄더니 뭔가 심심해서 4 전기모기채는신이야 0 1 일 전 112
180578 [컴퓨터] 이거 사운드카드 죽은거냐? 3 와신상담 0 1 일 전 151
180577 [컴퓨터] m.2케이스에 넣어서 sd카드 대신에 사용해도 괜찮아?? 7 코싸멘뚜 0 1 일 전 187