일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 초보코딩
- 컴퓨터과학개론
- 알고리즘
- 프로그래밍기초
- 코딩초보
- 메소드
- 프로그래밍언어
- 리눅스
- Java
- Git
- JAVA기초
- 배열
- spring
- 초보코딩탈출
- github
- 자바프로그래밍
- eclips
- 제이쉘
- 자바 스프링
- 스프링 기초
- 이클립스
- 기초코딩
- 자바기초
- Elk
- 자바
- 클래스
- 프로그래밍
- 데이터베이스
- 스프링
- JShell
- Today
- Total
키보드워리어
[자바] 추상클래스 제한과 활용 본문
안녕하세요 【키보드 워리어】
⌨🗡🧑
블로그 방문자 여러분, 안경닦이입니다.
오늘은 추상화 에 대해 알아보겠습니다.
서론에 힘을 주었습니다 ㅋㅋ
추상화는 중요한 주제이니까요. 추상화를 통한 제한과 활용을 알아볼게요.
추상 클래스의 제한과 활용
먼저, 추상 클래스란?
추상 클래스란, 하나 이상의 추상 메서드를 포함하고 있어서, 해당 클래스를 직접 인스턴스화 할 수 없는 클래스를 말합니다.
추상 클래스는 하위 클래스에서 구체적인 구현을 제공해야 합니다. *추상 메서드도 마찬가지입니다.
추상클래스 정의
추상 클래스 정의하는 방법은 다음과 같습니다.
abstract
아래는 추상 클래스의 예시입니다.
abstract class AbstractAnimal { //추상 클래스
abstract public void bark(); // 추상 메서드
}
위 코드에서 AbstractAnimal은 추상 클래스이며, bark()는 추상 메서드입니다.
추상 메서드는 구현되지 않은 메서드를 말하며, 하위 클래스에서 반드시 구현되어야 합니다.
추상 클래스의 제한
추상 클래스는 인스턴스화 할 수 없습니다. 따라서, 추상 클래스를 직접 사용할 수 없으며, 하위 클래스에서 상속받아 사용해야 합니다.
또한, 추상 메서드는 선언만 되어 있으므로, 메서드 안에서 특정한 구문이 있을 수 없습니다. 추상 메서드는 오직 반환 타입만을 가질 수 있습니다.
abstract class Car{
abstract public String car(); //반환 타입은 String
}
추상 클래스의 활용
추상 클래스는 하위 클래스에서 구체적인 구현을 제공해야 한다는 특징을 가지고 있으므로, 하위 클래스에서 추상 메서드를 구현하여 사용합니다.
아래는 AbstractAnimal을 상속받은 하위 클래스 Dog의 예시입니다.
class Dog extends AbstractAnimal {
@Override
public void bark() { // 추상 메서드 구현
System.out.println("멍멍");
}
}
위 코드에서 Dog 클래스는 AbstractAnimal 추상 클래스를 상속받았으며, bark() 메서드를 구현하여 사용하고 있습니다. 따라서, Dog 클래스는 추상 클래스를 상속받아 구현한 구체적인 클래스가 됩니다.
이상으로 자바 추상 클래스에 대해 알아보았습니다. 감사합니다!
'JAVA > 입문' 카테고리의 다른 글
[자바] 컬렉션 소개: Java의 List 이해 (0) | 2023.03.16 |
---|---|
[자바] 인터페이스에 관한 이야기 (interface) (0) | 2023.03.12 |
[자바] - 다중 상속과 참조 변수에 얽힌 퀴즈 (0) | 2023.03.10 |
[자바] 객체지향 - super키워드를 이용한 부모클래스 이용 (0) | 2023.03.09 |
[자바] 객체 클래스(Object Class)는 상속의 최상위 클래스 (0) | 2023.03.06 |