본문 바로가기

전체 글236

[Advanced JAVA] Jaca annotation and RTTI RTTI(Run-Time Type Information)자바 프로그램의 실행(런타임)중에 타입 정보를 알아낼 수 있으며 사용도 가능하다런타임 시 객체와 클래스의 정보를 알아내는 방법첫번째는 전통적 RTTI로 컴파일 시점에 사용 가능한 모든 타입을 클래스에 내포두번째는 리플렉션 매커니즘으로 런타임 시에 클래스의 정보만을 알고 사용할 수 있는 것OOP의 다형성은 전통적 RTTI로 자바 컴파일 시 상속구조를 파악하여 동작하는 원리 c의 프로그램 실행 과정a.c a.oa가 b를 참조 + link -> a.exe -> RAM으로 올리고, RAM에 올린 주소로 재배치한 뒤 파일 실행b.c b.o java의 프로그램 실행 과정Java는 linking이 없고, jar를 이용해서 jar파일을 생성. a,b를 묶어 jar.. 2014. 12. 25.
[Advanced JAVA] Exceptions Java의 Error 처리error 또는 exception 상황에 Throwable을 상속받은 객체를 throw 함으로써 에러 상황 전파C와 같이 return값을 통해 전파하지 않음Throwable은 recoverable exceptions 와 unrecoverable errors의 2개의 Subclass를 가짐Throwable은 Error와 RuntimeException을 제외하고 명시적으로 throws 하거나 try ~ catch 해주어야 한다 Exception프로그램이 만날 수 있는 대처가 가능한 error를 정의Exception이 발생하는 경우존재하지 않는 파일을 오픈하려고 할 때network연결에 문제가 생긴 경우연산을 수행하는데 있어, 범위를 벗어난 경우로드 해야 할 클래스파일을 로드하지 못한.. 2014. 12. 24.
[Advanced JAVA] Java Object interfaceclass 정의 시 "~면 외부에 알려준다"와 같은 경우 interface를 정의하여 사용 interface의 사용 예// interface 정의public interface CounterListener{public void onNotifyCount(int count);} public class Counter{private int Count = 0;CountListener mListener;// 리스너가 입력되면 세팅public void setCounterListener(CounterListener listener){mListener = listener;}public void increase(){mCount++;if(mCount % 10 == 0){// notify out sideif(m.. 2014. 12. 24.
[Advanced JAVA] Java keyword Modifierabstract내용은 없이 선언만 한다는 의미final선언한 값을 더이상 수정할 수 없음. 메소드에 사용할 경우 overide할 수 없는 상태가 됨. class에 사용하면 extends안됨native메소드 앞에만 가능. 이 메소드의 구현은 자바가 아닌 c로 되어있음static객체가 사용하는 필드가 아니라 class에서 사용하는 필드가 됨synchronized멀티 쓰레드 환경에서 동시 접근하는 것을 막음transient메모리에서만 값을 유지volatile멀티 쓰레드 환경에서 쓰임. 특정 상황에서 동시 접근할 때 값이 잘못되어 깨질 수 있는 문제를 해결. 캐쉬메모리를 통해 사용하지 않음strictfpjava의 floating 연산은 하드웨어를 이용해 계산하는데, 컴퓨터 환경마다 값이 다를 수 .. 2014. 12. 24.
클리핑 마스크 상단 레이어를 하단 레이어 안에 집어넣는 클리핑 마스크 좌측을 우측으로 만들어주는 효과를 준다. 따로 자르거나 수정하지 않고 원본을 보존한 채 원하는 결과물을 얻기 위해 좋은 방법 적용하는 방법도 간단한다. 위 사진의 좌측이 일반적인 레이어창이다. 두 레이어는 근접해있어야 하며 집어 넣을 것을 상단에, 넣어질 공간이 되는 레이어가 하단에 위치한다. 그리고 두 레이어 사이의 경계선에 마우스 포인터를 가져간 뒤 Alt키를 누르면 커서의 모양이 바뀐다. 그 상태에서 클릭해주면 우측에 보이는 것처럼 상단 레이어에 화살표가 생기며 클리핑 마스크가 적용된다. 이 기능을 사용할 때 주의할 점은, 안에 넣을 하단 레이어에 fill, 그라데이션 등의 효과가 들어가있는 상태가 되면 안된다는 것. 2014. 12. 16.
안드로이드 아이콘 제작 샘플 XXHdpi 기준 전체 사이즈 144*144 빨간선 138*138 파란선 134*134 아이콘이 사각형 이미지일 경우 파란선에 맞춰 만들고 사각형이 아닐 경우 빨간선에 맞춰 만든다. 블러, 그림자 등의 효과를 주려면 144*144 안에서 넣는다. 2014. 12. 15.
앱디자인을 위한 포토샵 기본 http://devstorys.tistory.com/18(크롬에 apk 깔 수 있게 하는 플러그인) 웹&앱 기준 72dpi RGB만 사용 아이콘 크기 iphone4,5 Android Hdpi(240dpi) Android Xhdpi(320 dpi) short cut (launcher, app icon) 114*114 72*72 96*96 App icon for the app store or google play 1024*1024 512*512 512*512 splash screen 640*960(640*1136) 480*800 720*1280 대표이미지 xxhdpi xhdpi hdpi 대표화면크기 1080*1920 720*1280 480*800 전체사이즈 512*512 144*144 96*96 72*72 .. 2014. 12. 15.
[Advanced JAVA] Java 기본 구조 용어정리 클래스(Class) 실행 시 오브젝트에 관한 소스 코드 객체(Object) 클래스의 실체. instance라고도 한다. 속성(Attribute) 객체의 데이터. Data Field라고도 한다. Data member, instance variable이라고도 한다. 메서드(Method) 객체의 행위. algorithm, function, procedure라고도 한다. 패키지(Package) 클래스 또는 하위 패키지를 그룹화 한 것 Source File Layout [] [] Naming Conventions Classes 첫글자를 대문자로 작성. 그리고 명사 사용. Methods 기본적으로 동사 사용. 맨 첫단어는 소문자로 시작, 두 단어 이상의 연결일 경우 첫글자 대문자로 단어 구분. Variab.. 2014. 12. 12.
각 방송사별 인터넷 온에어 시청 MBC - 바로가기 KBS - 바로가기 SBS - 바로가기 kbs만 플레이어 하나 설치해야 됨. 설치 안하고 보는 방법도 있지만 화질이 너무 구리다. 셋 다 모니터 전체화면으로 볼만한 수준이고 이정도를 공짜로 지원한다는건 상당히 만족스럽다. 왜 지금까지 이걸 모르고 살았지... 이제 아프리카 볼 일이 별로 없어질 듯. 2014. 1. 22.