일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 사칙연산
- xss game
- document
- 메소드
- jQuery
- 함수
- blind sql injection
- xss game 풀이
- 배열
- burp suite
- Pwndbg
- htmlspecialchars
- sql injection
- suninatas 풀이
- 백준 알고리즘
- 포인터
- element 조회
- window
- lord of sql injection
- 백준 파이썬
- github
- 객체
- python
- 김성엽 대표님
- property
- 조건문
- IF문
- 파이썬
- 자바스크립트
- object
- Today
- Total
power-girl0-0
추상클래스와 인터페이스 본문
안녕하세요-!! 오늘은 추상클래스와 인터페이스의 차이에 대해서 궁금증해결을 위해 찾아왔습니다><
자-!! 저희는 오늘도 지식주머니에 담기 위해 바로 시작해 보도록 하겠습니다.
추상 클래스 : 하나 이상 포함되거나 abstract로 정의된 경우
- 일반적인 메소드도 가능합니다.
- 추상 클래스가 아닌 클래스에서 상속을 받을 경우 추상메소드를 모두 구현해 주어야 합니다.
- 추상 클래스 안에서 추상클래스를 상속받는다면 모두 구현해주지 않아도 됩니다.
- 다중 상속이 불가능합니다.
- 인스턴스는 만들 수 없지만 생성자는 가질 수 있습니다.
(추상클래스 상속받은 클래스를 통하면 인스턴스화도 가능합니다.)
ex) "추상 클래스명 변수명 =new 클래스명(); "
- 메소드 하나이상 abstract를 만들면 반드시 클래스명 앞에 abstract를 정의해야 합니다.
- 클래스에 추상클래스를 상속할 때는 extends를 사용합니다.
public abstract class Calculator { //추상클래스 생성
public abstract int add(int a, int b); //추상메소드 생성
public abstract int subtract(int a, int b); //추상메소드 생성
public abstract double average(int[] a); //추상메소드 생성
}
추상 메소드 : 내용이 구현되어 있지 않은 abstract로 정의된 메소드
인터페이스 : 모든 메소드가 추상 메소드인 경우
- 인터페이스는 껍데기만 있는 메소드의 집합이라고 생각하시면 됩니다.
- 상속하는 클래스에서 해당 메소드의 내용을 구현해서 사용합니다.
- 인터페이스에 생성된 메소드는 상속받은 클래스에서 무조건 내용을 구현해야합니다.
- 일반변수 구현이 불가능합니다.
- 변수들은 static이어야하며 final을 붙일 수 없습니다.
- 다중 상속이 가능합니다.
- 생성자와 인스턴스를 만들 수 없습니다.
( 인터페이스를 구현한 클래스를 활용하면 인스턴스화를 사용할 수 있습니다.)
- 접근지정자로는 없거나 public, abstract만 가능합니다.
- 클래스가 인터페이스를 상속받을 때는 implements를 사용합니다.
이해하기 쉽게 interface 예제는 아래 링크를 통해서 보고오도록 하겠습니다-!!^___^
https://power-girl0-0.tistory.com/29
이상으로 추상클래스와 interface에 대해서 알아보았습니다 ㅎㅎ
많이 도움되셨나요?ㅎㅎ
그렇다면 다음에 또 만나요~~!!
'언어 > Java' 카테고리의 다른 글
java를 이용한 프린터 만들기 (0) | 2020.04.18 |
---|---|
interface를 이용하여 TV프로그램짜기 (0) | 2020.04.16 |
간단한 Bank 프로그램 구현하기 (0) | 2020.04.13 |
입력받은 값 중 가장 큰 수 출력하기 (0) | 2020.03.31 |
입력값을 받아 구구단 출력 (0) | 2020.03.31 |