반응형
청춘고양이
배움을 기록하는 곳
청춘고양이
전체 방문자
오늘
어제
  • Hello World (119)
    • JQuery (5)
    • In my opinion (4)
    • HTML&CSS (8)
    • JS (9)
    • JAVA (21)
    • Spring Boot (21)
    • Node.js (1)
    • Linux (7)
    • Git (2)
    • Kotlin (4)
    • Fluttor (4)
    • 정보처리기사 (19)
    • AWS (1)
    • Oracle (8)
    • MySQL (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 제이쿼리 버튼클릭시 색 변경
  • js 패스워드 변경
  • 가위바위보js
  • 스크롤js
  • 객체 안의 함수
  • 중복 제거 로또
  • 쉬프트 연산
  • 청춘고양이
  • 제이쿼리
  • 초보개발
  • js 로또 번호
  • 제이쿼리 비밀번호
  • spring 기본설정
  • 자바
  • 제이쿼리 패스워드 변경
  • 자바db연동
  • css
  • js 비밀번호
  • js
  • ScrollEffectJs

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청춘고양이

배움을 기록하는 곳

JAVA

인터페이스

2022. 5. 25. 01:18
반응형

인터페이스(interface)
-추상 메서드의 집합 <- 프로그래밍 관점
-구현된 것이 전혀 없는 설계도. 껍데기(모든 멤버가 public)
-아무것도 없음, 추상 메서드만 적어놓음
- public abstract 생략 가능 왜냐하면 interface는 항상 public abstract이기 때문에
- 상수는 항상 public static final임


인터페이스의 상속
-인터페이스의 조상은 인터페이스만 가능(Object가 최고 조상 아님)
- 다중 상속이 가능.(추상 메서드는 충돌해도 문제없음) -> 조상이 여러 개
- 선언부가 다르면 둘 다 상속받으면 그만인데. 선언부가 같고 내용{}이 다르면 어느 쪽을 상속받을지 결정할 수 없다. -> 이럴 때 충돌이 발생하는데 -> 인터페이스로 만들어버리면 충돌 없음


인터페이스의 구현

-인터페이스에 정의된 추상 메서드를 완성하는 것
- 인터페이스에 정의된 추상 메서드를 모두 구현해야 함
-> class 클래스 이름 implements 인터페이스 이름 {}
- 일부만 구현하는 경우, 클래스 앞에 abstract를 붙여야 함.
-> ex) 인터페이스 안에 추상 메서드가 두 개인 경우 다른 클래스를 통해 인터페이스를 구현할 때 추상 메서드가 1개일 때 abstract를 클래스 앞에 붙여서 남은 메서드 1개를 생략할 수 있다. 이 부분이 중요한데 메서드 두 개 중 하나를 구현하되 남은 한 개는 없어진 게 아닌 생략된 것!


추상 클래스
-일부가 미완성

추상 클래스와 인터페이스의 공통점은?
-> 추상 메서드를 가지고 있다.(미완성 설계도)

추상 클래스와 인터페이스의 차이점은?
-> 인터페이스는 iv(인스턴스 변수)를 가질 수 없다.


해당 포스팅은 남궁성님의 자바의 정석 기초편을 보면서 공부한 내용을 정리했습니다. 참고 부탁드립니다.

반응형
저작자표시 (새창열림)

'JAVA' 카테고리의 다른 글

연산자  (0) 2022.06.06
Scanner  (0) 2022.06.06
형 변환  (0) 2022.06.06
양의 정수, 음수, 실수, 자료형  (0) 2022.06.03
추상  (0) 2022.05.25
    'JAVA' 카테고리의 다른 글
    • Scanner
    • 형 변환
    • 양의 정수, 음수, 실수, 자료형
    • 추상
    청춘고양이
    청춘고양이
    신입개발자

    티스토리툴바