<--! [JAVA] 추상클래스 (abstract) -->

[JAVA] 추상클래스 (abstract)

필그램

·

2017. 7. 19. 07:22


추상클래스를 책에서 보면 어떻게 쓰는지는 잘 나와있니만, 왜 쓰는지는 이해하기 힘들다.(ch13-3)


http://nix102guri.egloos.com/521733 이 블로그는 이것을 잘 설명하고 있다.  배경과 상세한 설명이 필요하시면, 이링크를 보시면 좋고, 저는 이부분에 약간 설명 추가하여 정리해 봅니다.


쓰는 법은 여느 책에서와 같이

abstract class 클래스이름(Abc) { 
     // ... 

이렇게 쓰고..


이것을 쓰는 클래스는  

public  class Def extends Abc {

     // ...

}

합니다.


참고사진을 보면


그림처럼 코드를 만들경우


abstract class  CalculatorObject impliments Calculator{ 
     // ... 

해야하며,


MyCalculator는 

public class extends CalculatorObject {  } 해야한다. 




추상클래스의 작성은


여러 클래스에 공통적으로 사용될 수 있는 클래스를 바로 작성하기도 하고, 기존의 클래스의 공통적인 부분을 뽑아서 추상클래스로 만들어 상속하도록 하는 경우도 있다. 


몰랐던 추상(abstract)의 의미 이다.


추상[抽象] - 낱낱의 구체적 표상(表象)이나 개념에서 공통된 성질을 뽑아 이를 일반적인 개념으로 파악하는 정신 작용 




영어로는 

ab·stract

adjective
abˈstrakt,ˈabˌstrakt/
  1. 1.
    existing in thought or as an idea but not having a physical or concrete existence.



상속이 자손클래스를 만드는데 조상클래스를 사용하는 것이라면, 추상화는 기존의 클래스의 공통부분을 뽑아 내서 조상클래스를 만드는 것이라고 할 수 있다. 


[Adapter]

클래스가 여러개의 데이터를 관리해야할때는 코드가 많아질 것이다.

이때, 미리 만들어주는 것이 어댑터 이다.


안드로이드 프로그램에서 가장 많이 쓰는 것중 하나가 ListView이다.

이것은 Adapter를 쓴다.


반응형