일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- rxjava hot observable
- 클래스
- rxjava cold observable
- 스택 자바 코드
- 안드로이드 유닛테스트란
- ANR이란
- rxjava disposable
- 안드로이드 라이선스 종류
- 멤버변수
- 서비스 vs 쓰레드
- jvm 작동 원리
- 안드로이드 유닛 테스트 예시
- 안드로이드 os 구조
- 서비스 쓰레드 차이
- 자바 다형성
- Rxjava Observable
- 안드로이드 유닛 테스트
- 큐 자바 코드
- 스택 큐 차이
- 플러터 설치 2022
- android ar 개발
- 안드로이드 레트로핏 crud
- 2022 플러터 설치
- android retrofit login
- 안드로이드 레트로핏 사용법
- ar vr 차이
- 객체
- 2022 플러터 안드로이드 스튜디오
- 안드로이드 라이선스
- jvm이란
- Today
- Total
나만을 위한 블로그
[Android] 어노테이션이란? 본문
Annotation의 사전적 정의 : 주석
자바 / 안드로이드의 Annotation : @를 이용한 주석이다. 자바 코드에 좀 특별한 주석을 달아 의미를 부여한 것
참고한 사이트 : https://sjh836.tistory.com/8
https://elfinlas.github.io/2017/12/14/java-annotation/
https://jungwoon.github.io/android/2016/10/10/Android-Support-Annotations-Guide/
이클립스든(난 자바를 이클립스를 써서 공부했기 때문에 인텔리제이는 어떤지 모르겠다) 안스든 여러 번 본 적이 있는 놈이다. 처음 이걸 봤을 때는 신경쓰였지만 그냥 냅둬도 내 코드들이 제대로 동작하기 때문에 그냥 냅뒀다.
그래도 한번 간단하게라도 정리해두면 편할 것 같아 쓴다.
자바에서 기본하는 어노테이션의 종류와 의미는 아래와 같다.
@Override : 안드로이드 스튜디오에서 특히 많이 보인다. 이 어노테이션은 내가 선언한 or 선언된 메서드가 오버라이드됐다는 걸 알려주는 어노테이션이다. 만약 부모 클래스(인터페이스)에서 해당 메서드를 찾을 수 없다면 컴파일 에러가 발생한다.
@Deprecated : 해당 메서드가 더 이상 안 쓰이거나, 혹은 앞으로 이 메서드에 대한 기술적 지원(유지보수)이 없다는 뜻이다. 자바와 안스에서는 메서드 이름 or 어노테이션에 삭선이 그어져 있다.
@SuppressWarnings : 선언한 곳의 컴파일 에러를 무시하라는 의미다.
@NonNull : 이게 붙어있는 변수, 메서드에 null을 대입하면 경고가 뜬다
@Nullable : 이게 붙은 변수는 null일 수도 있다는 걸 나타낸다. @Nullable 어노테이션이 붙은 변수를 null 체크 없이 사용하면 에러가 난다. 해당 어노테이션을 쓸 때는 참조하거나 호출하는 쪽에서 null 체크를 하지 않으면 반드시 경고가 나오기 때문에 사용에 주의.
내가 자주 본 어노테이션들만 써놨다. 다음에도 보게 된다면 그 때 추가해야겠다.
'Android' 카테고리의 다른 글
[Android] 안드로이드 스튜디오와 깃허브 연동하기 (0) | 2020.01.16 |
---|---|
[Android] 앱 수준 gradle 빌드 오류 'No matching client found for package name' 해결법 (0) | 2019.12.13 |
[Android] AR core로 만든 3D 객체 탭해서 지우기 (0) | 2019.12.10 |
[Android] LayoutInflater를 사용한 텍스트뷰 동적 추가하기 (0) | 2019.12.10 |
[Android] 네이버 사전 API 사용법 (0) | 2019.12.09 |