interface
인터페이스는 상수와 구현되지 않은 메소드로만 구성된다.
추상 아닌것도 필요한데요? ---> 추상클래스 이용 !! interface X
인터페이스 상속 implements
다중상속을 지원하기 위함.
인터페이스 안의 필드는 기본으로 static, final
인터페이스 안의 메소드는 public abstract
자식클래스에서는 implements로 상속하고, 부모가 가지고 있던 메소드를 반드시 완성시켜야 한다.
xxxxxxxxxx
package com.inter;
//interface: 내부에 추상메소드만 가지고 있는 객체. 미완성 객체. 객체생성 안됨
public interface MyInterface {
//인터페이스 안의 필드는 기본으로 static, final이 붙어있다.
int num=100; //static, final
//인터페이스 안의 메소드는 기본으로 public abstract가 붙어 있다.
public abstract void go();
void stop();
}
xxxxxxxxxx
package com.inter;
class Tom{
int age = 50;
}
//인터페이스 안의 필드는 기본으로 static, final이 붙어있따.
interface Hillary{
int age = 46;
}
public class LittleTom extends Tom implements Hillary {
int age = 20;
private void test() {
System.out.println(age); //20
System.out.println(this.age); //20
System.out.println(super.age); //50 -Tom
System.out.println(Hillary.age);//46-Hillary
}
public static void main(String[] args) {
LittleTom little = new LittleTom();
little.test();
if(little instanceof Tom) //상속관계
System.out.println("instanceof Tom");
if(little instanceof Hillary)
System.out.println("instanceof Hillary");
if(little instanceof LittleTom)
System.out.println("instanceof LittleTom");
if(little instanceof Object)
System.out.println("instanceof Object");
// if(little instanceof Bill) //상속관계가 없으면 아예 사용 불가능
// System.out.println("instanceof Bill");
}
}
'Computer Science > Languages' 카테고리의 다른 글
[java] 쓰레드(Thread) (0) | 2019.01.24 |
---|---|
[java] 예외처리 (2) | 2019.01.24 |
[java] Collection 활용 (0) | 2019.01.17 |
[Java] final, static (0) | 2019.01.16 |
JAVA 입출력 (2) | 2019.01.08 |