Notice
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- jsp 내부객체
- Eclipse
- java
- 면접
- 설정
- 제이쿼리
- 깃허브
- 스프링
- Spring
- 깃허브 간단요약
- EL태그
- springboot
- MySQL
- jsp
- jstl
- html
- 셋업
- 설치
- 알고리즘
- 필터체인
- Oracle
- 폼태그
- 마이바티스
- jquery
- 이클립스
- 자바
- 오라클
- SESSION
- 자바스크립트
- 버튼
Archives
- Today
- Total
은은하게 코드 뿌시기
추상클래스 / abstract class / abstract method 본문
728x90
책 안 보면 까먹죠?
안까먹을라면 정리하고 반복 해야죠?
추상클래스?
추상클래스를 알려면 추상메소드를 알아야 한다.
추상메소드 (abstract method)
: 자식클래스에서 반드시 오버라이딩 해야만 사용할 수있는 메소드,
선언부만 존재하며, 구현부는 작성되어 있지 않다.
바로 이 작성되어 있지 않은 구현부를 자식클래스에서 오버라이딩하여 사용
abstract 반환타입 메소드이름(); |
추상클래스 (abstract class)
: 하나 이상의 추상메소드를 포함하는 클래스
추상메소드를 가지고있는 클래스를 상속 받아 반드시 추상 메소드를 구현하도록 하기위해 사용한다.
추상메소드, 생성자, 필드, 일반 메소드도 포함할 수 있다.
abstract class 클래스이름 { abstract 반환타입 메소드이름(); } |
추상 메소드가 포함된 추상 클래스를 상속 받은 모든 자식 클래스는
추상메소드를 구현해야만 인스턴스를 생성할 수잇으므로, 반드시 구현하게 됩니다.
여기서 잠깐, 자바는 다중상속을 지원하지 않습니다.
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
31
32
33
34
35
36
37
38
39
40
|
package java_basic;
abstract class makeup {
abstract String ReturnColor();
}
class Eye extends makeup {
@Override
String ReturnColor() {
System.out.println("EyeMainColor");
return "EyeMainColor";
}
}
class Base extends makeup {
@Override
String ReturnColor() {
System.out.println("BaseMainColor");
return "BaseMainColor";
}
}
public class java_basic_abstract {
public static void main(String[] args) {
System.out.println("뭐야 인터넷이 느린거야 컴퓨터가 느린거야 ");
// makeup m = new makeup(); // 추상클래스는 인스턴스를 생성할 수 없음.
Eye e = new Eye();
Base b = new Base();
e.ReturnColor();
b.ReturnColor();
}
}
|
cs |
728x90
'자바 > 자바 기본' 카테고리의 다른 글
인터페이스 추상화 클래스의 차이점/공통점 (0) | 2022.10.19 |
---|---|
인터페이스 / interface (0) | 2022.10.19 |
배열 (0) | 2022.10.02 |
[JAVA] JVM 메모리구조/클래스변수/인스턴스변수/지역변수 (0) | 2022.08.30 |
[자바] 오버로딩(overloading)/오버라이딩(overriding) (0) | 2022.08.30 |
Comments