추상 클래스 공부를 하면서 궁금한것이 있습니다.
둘빛
제가 항상 공부해도 추상 클래스와 인터페이스의 차이점을 잊어버리네요 ㅠㅠ
오늘도 추상 클래스 다시 공부하는데 몇가지 궁금한 점이 있어서요 ㅠ
대개 최상위 클래스는 하위 클래스가 가지고 있어야 하는 메소드를 포함합니다. 이것이 객체지향의 특징인데요, 하위 클래스는 자신에게 맞도록 해당 메소드를 오버라이딩해서 사용합니다.
그렇다면, 하위 클래스들이 이렇게 저마다 자기에게 맞는 내용(body)으로 새롭게 재정의 즉, 오버라이딩을 하게 된다면 굳이 상위 클래스 쪽에서 바디부분을 정의할 필요는 없게 됩니다. 이럴 경우, 상위 클래스에서는 메소드들을 abstract 수정자로 지정하고 메소드 이름만 정해서 선언만 하여 body를 정의하지 않는 경우가 있는데, 이런 메소드를 추상 메소드(abstract method)라고 합니다.네이버 검색하다가 이런 설명을 보았습니다.
하위 클래스마다 필요에 따라 각자 다르게 내용(body)가 바뀌므로 상위클래스(추상클래스)에 바디 부분을 정의할 필요가 없게 된다는 부분에서요...
1. 이렇게 사용할꺼면 그냥 추상 클래스 상속 받지 말고 하위클래스에서 그냥 구현해주면 안되는건가요??
2. 왜 추상 클래스는 객체를 생성하지 못하는거져??
대부분 설명에서 그냥 추상 클래스는 객체를 생성하지 못한다... 고만 나왔고 이유가 없더라고요..
abstract라서 그런가요??
뭔가 이유가 있을 듯한데요 ㅠㅠ
-
연하늘
흠.. 이제 1번이 왜 그런지 이해가 좀 갈 듯 말듯합니다 ㅎㅎ 2번도 알려주세요~
-
나길
아웅 머리야 ㅠㅠ 답변 감사드립니다^^ 한번 고민 좀 해보겠습니다^^
-
진이
좀 더 쉽게 말하면, 사람 이라는 객체는 직업이 프로그래머 일수도 있고 디자이너 일 수도 있습니다. 추상클래스인 \사람\ 이 없다면, \일을 한다\ 라는 상황을 자세하게 설명할 방법이 없습니다. 그러기 위해서는 그 \사람\의 \직업\ 을 알아내서 \프로그래밍을 하는지\ \디자인을 하는지\ 설명해 줘야 하지요
하지만 \사람\ 이라는 추상 클래스에서 \일을 한다\ 라고 하면, \직업\ 이 다른 자식 클래스에 내포된 \일을 한다\ 라는 부분이 \프로그래밍을 -
간조롱
소설같은 java 예제입니다
-
단화한
제가 책에서 배운 내용으론 클래스의 수평적 & 수직적 작업 분할과 관계 있다고 배웠습니다...
abstract class Shape {
public abstract void draw();
public abstract void delete();
}
class Circle extends Shape {
public void draw(){
System.out.println(\원을 그립니다\);
}
public void delete(
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2695934 | tr 속성값 (9) | 새 | 2025-05-25 |
2695905 | ASP로 개발됐을 때 css가 달라져요 ㅠㅠ (4) | 슬아라 | 2025-05-24 |
2695878 | form을 이용한 다른 페이지로 넘기는 방법을 알려주세요 (1) | 핫파랑 | 2025-05-24 |
2695844 | 저기 암호화 및 복호화 프로그램.. 만들어볼려는대 (2) | 한빛 | 2025-05-24 |
2695814 | [질문] PDA에서 애플릿이 가능한가요? (1) | 봄시내 | 2025-05-24 |
2695785 | 웹 설정 도와줄분 | 화이트캣 | 2025-05-23 |
2695730 | 갑자기 기억이 안나는데 accesskey 속성.. | 빛나라 | 2025-05-23 |
2695702 | [질문] Java 버전 차이에 의한 오류?!! (2) | 검사 | 2025-05-23 |
2695672 | 자바 임베디드 쪽으로 배우고 싶은데요..질문이요.. (1) | 뽀그리 | 2025-05-22 |
2695647 | 헉! 이클립스(v3.1)에서 발생되는 널포인트 익셉션? ;;; (3) | 아빠몬 | 2025-05-22 |
2695586 | IFRAME 캐싱 질문 | 봄나비 | 2025-05-22 |
2695498 | [질문]실행가능한 jar파일.. 정말 이해가 안가네요... ㅡㅜ;; | 터1프한렩 | 2025-05-21 |
2695468 | 자바랑 이클립스에서요.. | 스킬 | 2025-05-21 |
2695375 | Mysql 연동하는 자바 질문있습니다. | 아리솔 | 2025-05-20 |
2695319 | 파워포인트 파일을 저장할 수 있을까요? | 시윤 | 2025-05-19 |
2695289 | [질문]Tween 값의 정도를 알고 싶습니다. | 타마 | 2025-05-19 |
2695238 | c 와 c++의 시작 (10) | ChocoHoilc | 2025-05-18 |
2695215 | 탑메뉴의 repeat-x .배경이 두가지에요ㅠ ㅠ | 널위해 | 2025-05-18 |
2695187 | 자바스크립트와 자바의 import에 관해서 질문드려요 (1) | 무슬 | 2025-05-18 |
2695116 | 테마 문의 (해당 사이트와 같은 테마 혹은 플러그인) | Sweet | 2025-05-17 |