일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- svn
- 캡슐화
- error
- 특징
- constructor
- VCS
- Android Studio
- Class
- 상속
- TortoiseSVN
- git
- commit
- terms
- Branch
- 문법
- 자바
- 생성자
- Android
- syntax
- Checkout
- sourcetree
- intellij 연동
- IntelliJ
- java
- Subversion
- install
- gradle
- IntelliJ IDEA Community
- SSL
- cherrypick
- Today
- Total
목록java (18)
Jay's Developer Note
연산자 연산은 하나 이상의 피연산자를 연산자의 정의에 따라 계산하여 하나의 결괏값을 도출해 내는 과정이다. 연산자를 이용한 결과는 언제나 하나이다. 산술 연산자 가감승제를 표현하는 연산자이다. int a = 20; int b = 10; int result; // 덧셈 연산자 result = a + b;// result = 30 // 뺄셈 연산자 result = a - b;// result = 10 // 곱셈 연산자 result = a * b;// result = 200 // 나눗셈 연산자 result = a / b;// result = 2 // 나머지 연산자 result = a % b;// result = 0 비교 연산자 피연산자의 크기나 객체의 타입 비교 시 사용한다. 결과는 논리형으로 TRUE/FAL..
배열 변수 변수 선언 방법 // 둘 다 사용 가능 int[] arr1; int arr2[]; 데이터형[] 변수명; 데이터형 변수명[]; 변수 생성 방법 int[] arr1 = new int[3]; int arr2[] = new int[3]; 데이터형[] 변수명 = new 데이터형[배열 길이]; 데이터형 변수명[] = new 데이터형[배열 길이]; 변수 초기화 방법 int[] arr1 = new int[3]; int[] arr2 = new int[]{1, 2, 3}; new 데이터형[배열 길이]; new 데이터형[]{초기값 나열}; 길이로만 초기화할 경우 초기값은 아래와 같다. 사용 방법 배열의 index 는 0부터 시작하니 사용할 때 유의하도록 하자. // 3개짜리 배열 생성 및 초기화 int[] arr..
기본 변수 변수 선언 방법 데이터형 변수명 = 변수값; 형태로 선언하여 사용할 수 있다. 변수 : Variable - 기억 장소에 저장된 값이 변할 수 있기 때문에 변수라고 칭하며, 이 기억 장소의 이름은 변수명이라고 한다. - 변수명은 금기사항만 제외하면 무엇으로든 지을 수 있다. 변수명 금기사항 - 자바 예약어는 사용할 수 없다. - 첫 시작을 숫자로 할 수 없다. - 첫 시작을 특수문자로 할 수 없다.(단, _(언더바), $(달러) 는 제외) ※ 한글을 쓸 수는 있지만, 사용하는 것은 피하도록 하자. int abc;// 영어소문자 O int ABC;// 영어대문자 O int 한글가능;// 한글 O int _135;// _(언더바) 시작 O int $123;// $(달러) 시작 O int 123;//..
자바 개발 환경(JAVA Development Environment) 자바는 JVM 만 있으면 실행이 되기 때문에 플랫폼에 독립적이다. 자바 개발 환경 자바에는 플랫폼에 독립적인 자체 플랫폼이 있는데 이를 자바 개발 환경 - JDK(Java Development Kit) 라 칭한다. 자바 개발 환경 구조 JVM : Java Virtual Machine - 자바 가상 머신은 컴파일 후 생성된 바이트 코드를 플랫폼(Windows, Android, Linux 등)에 맞는 기계어로 해석해서 실행한다. Java API : Java Application Programming Interface - API 는 프로그래밍 간에 통신하는 규약이다. Java API 는 자바가 지원하는 클래스 라이브러리로, 프로그래밍에 필요..
자바 특징 자바의 특징을 아주 간단하게 알아보겠다. 단순하다 - C++ 로부터 파생된 언어로써 문법적으로 유사하다. 객체지향 언어이다 - 객체 개념을 적용하는 언어이다. 플랫폼에 독립적이다 - JVM 에 의해 실행이 되므로 JVM 만 있다면 Windows, Linux, Android 어디서든 실행이 가능하다. 컴파일러와 인터프리터 언어의 두 가지 특징을 모두 가진다 - 컴파일러로 바이트코드로 변환한 뒤, 인터프리터로 기계어로 해석되어 실행한다. 분산 처리에 쓰기 쉽다 - 기본적인 네트워크 기능들을 내장하고 있고, 프로토콜을 쓸 수 있는 라이브러리들을 많이 제공한다. 견고하다 - 기존 언어들의 에러 원인이 되는 요소들은 라이브러리를 제공한다. - 포인터를 사용하지 않는다. - 자동으로 GC 기능을 수행해 ..
MQTT 통신 시 중요사항(SSL/TLS) 발생원인 간단한 네트워크 통신을 가능케하는 MQTT(Message Queuing Telemetry Transport)를 사용하다가 보안성의 이슈가 생겼다. 그건 TLS(Transport Layer Security)를 사용하여 통신을 하던 도중 클라이언트에서 발생한 뜬금없는 이슈였다. 원인는 KeyStore 타입인데, JAVA에서는 SSL 통신 시에 기본적으로 JKS(Java KeyStore)를 사용하게 되는데, 이 JKS 알고리즘이 Android에서는 적용이 안되는 문제다. Android 에서는 JKS 대신 BKS(Bouncycastle KeyStore)를 사용한다. java.security.KeyStore.getDefaultType() 으로 확인해보면 BKS가..
Error:Cannot find System Java Compiler 다른 프로젝트는 잘 되는 유독 특정 프로젝트만 빌드 시 컴파일러를 못찾는다? 그러면 프로젝트 레벨의 build.gradle 파일로 가서 buildscript 태그 안에 dependencies의 classpath를 봐보자 현재 Android Studio 버전과 같은지를 확인해보자
Caused by: java.lang.NoSuchMethodError 발생원인 Caused by: java.lang.NoSuchMethodError: android.support.v4.content.res.ConfigurationHelper.getScreenWidthDp 내 경우에는 페이스북 oAuth 때문에 사용한 라이브러리의 문제였다. 해결방법 app 단위의 build.gradle 파일에 compile 'com.facebook.android:facebook-android-sdk:4.+' 를 compile 'com.facebook.android:facebook-android-sdk:4.20.0' 로 변경해야 한다.