Java 05

2017. 1. 30. 22:43Work/Java

728x90
반응형

Abstract

"추상적인" 이라는 뜻을 지님


Abstract

class(추상 클래스)

- 인스턴스화를 막는다.

method(추상 메소드)

- 서브 클래스에게 몸통 부분 제작을 하도록 한다.

(몸통 부분 제작 불가)

(주의 : abstract class 는 일반 method를 만들어 몸통 부분을 바로 제작 할 수 있지만 반드시 abstract method를 1개 이상 가져야 한다.)


->  서브 클래스가 반드시 제작해야 할 필요가 있는 메소드가 있을 경우 사용

각각 같은 이벤트 에서 다른 이벤트 발생을 원하는 경우 사용


Interface


interface

variable(인터페이스 변수)

- public static final type 과 동일

method(인터페이스 메소드)

- implements 적용된 클래스에게 몸통 부분 제작을 하도록 한다.

(몸통 부분 제작 불가)

_implements(구현, 시행) : 정보를 알려주고 구현은 하위의 존재에게 시킨다.


interface main_interface{

int var = 100; (public static final int var = 100; 과 동일)

public void display();

}

-> 객체 생성 불가, 다른 class에 implements 키워드를 붙여 사용

class A implements main_interface{

public void display(){...}

}


ex)  main_interface m_i = new A(); (인터 페이스로 객체를 생성한다.)

=> 직접적인 세부 내용을 알 수 없다.

m_i.display(); (인터페이스에 선언된 함수는 호출 가능, 하지만 다른 함수는 불가능 하다.)




-> 구현 되지 않은 메소드와 필요한 상수들을 모아둔 구조


Polymorphism

"다형성" 이라는 뜻을 지님


슈퍼 클래스 객체 = 서브 클래스 객체 

=> 자동 형 변환 된다 (슈퍼 클래스 -> 서브 클래스, 단 반대 형태는 error)


ex)  void area(Object source){...}

classA a = new classA();

area(a); (자동 형 변환에 의거 변형)


-> 모양만 가지고 상황에 따른 다양한 일 처리



728x90
반응형

'Work > Java' 카테고리의 다른 글

Java 07  (0) 2017.02.03
Java 06  (0) 2017.02.01
Java 04  (0) 2017.01.28
Java 03  (0) 2017.01.26
Java 02  (0) 2017.01.25