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
- 버튼
- Spring
- jquery
- 설정
- 자바스크립트
- 마이바티스
- 설치
- 폼태그
- 이클립스
- 면접
- 제이쿼리
- jstl
- 깃허브
- jsp
- java
- Oracle
- EL태그
- 필터체인
- springboot
- 깃허브 간단요약
- html
- 오라클
- SESSION
- 자바
- Eclipse
- 알고리즘
- jsp 내부객체
- 셋업
- 스프링
- MySQL
Archives
- Today
- Total
은은하게 코드 뿌시기
인터페이스 / interface 본문
728x90
인터페이스
: 일종의 추상클래스, 다른클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 중간 매개 역할 까지 담당 하는 클래스.
자바는 다중상속을 지원하지 않음으로 인터페이스를 통해 다중상속을 지원함.
대규모 프로젝트 개발시 일관되고 정형화된 개발을 위한 표준화가 가능하다.
접근제어자 interface 인터페이스이름{ public static finall 타입 상수이름 = 값; public abstract 메소드이름(매개변수목록); public 메소드이름(매개변수목록); // 모든 메서드는 public abstract 이어야 하며 생략가능 abstract } |
interface 의 모든 멤버변수는 public static final 이어야 하며, 이를 생략 할수있다.
interface 의 모든 메서드는 public abstract 이어야 하며, 이를 생략할 수 있다.
단, static 메서드와 디폴트메서드는 예외
인터페이스의 구현
상속과 구현을 동시에 할 수있다.
class 클래스이름 extends 상위클리스이름 implements 인터페이스이름{ ... } |
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
|
package java_basic;
interface interface1{
String ReturnTest1();
}
interface interface2{
int ReturnTest1Count();
}
class interClass implements interface1, interface2 {
String test1 = "test1";
@Override
public String ReturnTest1() {
return test1;
}
@Override
public int ReturnTest1Count() {
return test1.length();
}
}
public class java_basic_interface {
public static void main(String[] args) {
interClass class1 = new interClass();
System.out.println(class1.test1);
System.out.println(class1.ReturnTest1());
System.out.println(class1.ReturnTest1Count());
}
}
|
cs |
728x90
'자바 > 자바 기본' 카테고리의 다른 글
[java] @Target , @Retention/메타애너테이션 (0) | 2022.12.01 |
---|---|
인터페이스 추상화 클래스의 차이점/공통점 (0) | 2022.10.19 |
추상클래스 / abstract class / abstract method (0) | 2022.10.17 |
배열 (0) | 2022.10.02 |
[JAVA] JVM 메모리구조/클래스변수/인스턴스변수/지역변수 (0) | 2022.08.30 |
Comments