본문 바로가기

IT/Java64

interface 인터페이스 : 일종의 추상클래스이지만 오직 추상메서드와 상수만을 멤버로 갖는다. interface 인터페이스이름 { public static fianl 타입 상수이름 = 값; public abstact 메서드이름(매개변수목록); } 모든 멤버변수는 public static final 이어야하며, 이를 생략 할 수 있다. 모든 메서드는 public abstract이어야 하며, 이를 상략할 수 있다.략(static메서드와 디폴트 메서드는 예외 1.8부터) 인터페이스의 상속 : 인터페이스는 인터페이스로부터만 상속받을 수 있으며, 클래스와 다르게 다중상속이 허용된다. (interface는 object와 같은 최고 조상이 없다.) 디폴트 메서드(jdk1.8이상) : 추상메서드의 기본적인 구현을 제공하는 메서드 여.. 2019. 6. 26.
abstract class 추상클래스 : 미완성의 메서드(추상메서드)를 포함하고 있는 클래스를 말한다. 인스턴스는 생성할 수 없으며, 자손 클래스에 의해서만 완성될 수 있다 추상메서드 : 선언부만 작성하고 구현부는 작성하지 않은것, 자손클래스에서 추상메서드를 반드시 구현하도록 강요하기 위해 사용 abstract 리턴타입 메서드이름(); 2019. 6. 26.
Polymorphism 다형성 조상클래스 타입의 참조변수로 자손클래스의 인스턴스를 참조 할 수 있도록 한다 참조변수가 사용할 수 있는 멤버의 개수는 인스턴스의 멤버 개수보다 같거나 적어야한다. 조상타입의 참조변수로 자손타입의 인스턴스를 참조할 수 있으나 자손타입의 참조변수로 조상타입의 인스턴스를 참조할 수 는 없다. 참조변수의 형변환 서로 상속 관계에 있는 클래스사이에서만 형변환이 가능하다. 자손타입 -> 조상타입 (up-casting) : 형변환 생략가능 자손타입 2019. 6. 26.
제어자 제어자 : 클래스, 변수 또는 메서드의 선언부에 사용되어 부가적인 의미 부여 접근 제어자 : public, protected, default, private 그 외 : static, fianl, abstract, native, tansient, synchronized, volatile, strictfp static (멤벼변수, 메서드, 초기화 블럭) 멤버변수 모든 인스턴스에 공통적으로 사용하는 클래스 변수 클래스 변수는 인스턴스를 생성하지 않고도 사용이 가능 클래스가 메모리에 로드시 생성 메서드 인스턴스를 생성하지 않고도 호출이 가능한 static메서드가 된다 static메서드 내에서는 인스턴스멤버들을 직접 사용할 수 없다. fianl(클래스, 메서드 , 멤버변수, 지역변수) 클래스 변경될 수 없는 클래.. 2019. 6. 25.