2023. 12. 20. 11:43ㆍ2023.11.21-2024.05.31
package com.sukgi.inter;
//인터페이스
/*
* 다른 언어에서 찾기 힘든 자바의 고급 기능입니다.
* (왜 사용해? 어떻게 사용해? 특징?)
* 인터페이스란?
* 클래스 : 일반 메소드를 가질 수 있습니다.
* 추상 클래스 : 일반 메소드, 추상 메소드를 가질 수 있어요.
* 인터페이스 : 오로지 추상 메소드만 가질 수 있습니다.
*
* 인터페이스 내에 존재하는 메소드는 무조건 public abstract로 선언합니다.
* 인터페이스 내에 존재하는 변수는 무조건 public static final로 선언
*
* 인터페이스 내에 가질 수 잇는 것들 :
*
* 인터페이스는 다중 상속과 비슷한 기능을 제공합니다.
*
* interface 인터페이스명 {
* void 추상메소드();//바디는 없습니다. {} 구현부가 없습니다.
* }
*
* class 클래스명 implements 인터페이스명{
* 인터페이스에 있는 미구현 메소드 오버라이드
* }
*
* 그럼? 상속과 인터페이스의 차이점은?
* 상속 : class A extends B
* B라는 클래스를 상속받아 A의 기능을 더한다 .
* 순수상속 부모로부터 모든 권한과 재산 능력을 가져오기.
* * =================================================================
* 인터페이스 : class A implements B
* B라는 인터페이스를 구현하겠다.
* 권한상속 인터페이스만 가져오기 : 비어있는 것을 가져와서 내가 그 속을 만들어주기.
*/
//인터페이스 만들기
interface Do {
// 메소드 : 추상 메소드(만 들어갈 수 있다)
public abstract void attack();
public void play();
}
abstract class Hero {// 추상 클래스
String name;
public void print() {
}
public abstract void attack();// 미완성된 메소드 = 추상 메소드
}
class Superman extends Hero implements Do {
@Override // 부모의 메소드 자식이 재정의 해서 자신이 원하는 내용으로 사용
public void attack() {
}
@Override
public void play() {
// TODO Auto-generated method stub
}
}
public class Inter01 {
}
'2023.11.21-2024.05.31' 카테고리의 다른 글
231220 JAVA zoo 패키지(다형성) (0) | 2023.12.20 |
---|---|
231220 JAVA Inter02(인터페이스) (0) | 2023.12.20 |
231220 JAVA Study (1) | 2023.12.20 |
231220 JAVA Test01(프로그래머스 문제) (0) | 2023.12.20 |
231219 JAVA Test02(static,접근제어자, 상속) (0) | 2023.12.20 |