본문 바로가기
[Developer]/Android

안드로이드 교육 1일차 오후

by 해피빈이 2009. 12. 7.

설치 및 셋팅

 

  1. Java SE 6.0 설치. - 시스템 환경변수 등록
  2. Eclipse 다운로드 및 해제
  3. Android SDK setting
  4. android emulator icon 클릭 후, Docs, API 등 업데이트 실행.

 

Project 전반에 걸친 정보 파일 : AndroidManifest.xml

 

안드로이드는 JAVA 기반이기 때문에 JAVA의 속성을 그대로 활용 가능.

 

따라서 상속 받고 그 메소드를 활용 할 수 있다.

 

stack - method 수행 공간

heap - 객체 생성공간

 

변수호출시 변수를 찾는 순서

local -> this -> super -> super의 super .... 맨 끝까지 없으면 error~!

 

android에서는 상당히 유연성이 있어서 super단위의(parent) 인수를 원할 때가 많다.

따라서 그 해당하는 subclass 어떤 것도 매칭 될 수 있도록 했다.

ex) Toast t = Toast.makeText(this, "Hello World", 1); // import android.widget.Toast; 추가필요.

   t.show하면  현재 호출된 여부를 알 수 있다.

ex) UI관련 클래스를 리턴받을 때도 super로 받는데, 이 때 하나의 실제적인 UI 객체 사용을 위해서는 (해당UI)로 캐스팅 시켜줘야 한다.

 

 

따라서 안드로이드에서는 다형성, 상속 개념이 상당히 중요하다.

 

**Overriding VS Overloading.

공통점 : method에 적용, polymorphism

차이점 :

Override - 상속 전제, 상속받은 기능 중 특정기능을 다시 정의, Access Modifier는 같거나 보다 넓게 해야 한다. (ex-protected의 경우, protected나, public으로만 가능하다), return type과 이름, 그리고 parameter는 같이야 한다.

 

Overload - 같거나 비슷한 기능의 method명을 같게, parameter list를 다르게 정의해서 사용한다. modifier나 return type, parameter는 달라도 상관없다. 이름만 같으면 된다.

 

안드로이드 SDK 버전을 바꾸고 싶으면

이클립스에서 프로젝트를  선택 후 Alt+Enter 혹은 우클릭 properties를 들어가서 android 항목에서 target version을 변경하고, manifest정보도 변경하면 된다.

 

-- 나라별 언어에 따라서 다르게 띄우고 싶으면..

/res/values-ko 라는 폴더를 별도로 만들어서, strings.xml 파일을 만들고, 내용을 그 해당 언어에 맞게 넣은 후,

에뮬레이터를 실행하여 settings에서 language에 들어가서 locale을 변경하면 해당 locale에 맞는 언어로 나온다.

 

xmlns:android="http://~~~~~~"

prefix를 xmlns(XML Namespace)를 http://~~~~~~~로 했다는 의미이다. android라는 것은 이것을 대칭하고 있는 이름이다.

이하로 android:blahblah 하는 것은 위에서 설정한 이름이 그렇기 때문이다.

 

protected는 상속받은 클래스들만 사용이 가능하다.

이 글은 스프링노트에서 작성되었습니다.

반응형

댓글