Java(12)
-
JVM
0. 들어가기 앞서 기계와 사람의 언어는 다릅니다. 프로그래머가 프로그램 코드를 작성 한다고 할 때, 0과 1만 해석 가능한 컴퓨터가 사람의 언어로 작성된 코드 자체를 이해하기란 불가능합니다. 따라서 프로그래머의 코드를 컴퓨터가 이해 가능한 기계어로 컴파일 해주어야 합니다. 1. JVM? > Java 이전의 언어, 즉, C / C++에서는 컴파일 플랫폼과 타겟 플랫폼이 다를 경우, 프로그램이 동작하지 않았습니다. > 즉, 윈도우에서 컴파일한 실행코드가 리눅스 환경에서는 동작하지 않았습니다. 이는 코드가 운영체제에 종속적라는 뜻입니다. > 동일한 플랫폼에서 컴파일과 실행을 같이 한다면, 프로그램은 아무 문제 없이 동작합니다. > 문제는 배포를 할 때 발생합니다. 플랫폼이 달라질 경우 프로그램은 동작하지 않..
2022.07.18 -
변수
변수(Variable) > 데이터를 저장하는 메모리상의 공간에 이름을 붙인 것이다. > 변수의 값은 바뀔 수 있으며, 하나의 변수에는 단 하나의 값만을 저장할 수 있다. 변수의 선언 변수를 사용하기 위해서는 변수를 선언해야 한다. 변수가 선언되면 메모리에 변수의 타입에 알맞은 크기의 저장공간이 확보된다. 변수는 다음과 같이 선언한다. // 변수타입 변수이름; int age;//정수형 변수 age를 선언한다. 위 코드에서 변수는 age이다. 변수를 선언 할 때는 변수의 타입과 이름을 함께 써주어야 한다. 변수를 선언한 후부터는 변수를 사용할 수 있으며, 보통 변수를 사용하기 앞서 적절한 값을 저장해주는 것이 필요하다. 이를 변수의 초기화라 한다. // 정수형 변수 age를 선언하고 값을 10으로 초기화 i..
2022.06.30 -
상수(final)
변수: 변할 수 있는 값 상수: 변하지 않는 값 float pi = 3.14f; 위와 같이 3.14의 값을 갖고 있는 변수 pi가 있다. pi += 1; 이 pi 변수를 이용하여 연산을 하다 실수로 위와 같이 pi에다 1을 더해버렸다. 이와 같은 실수를 방지하기 위해 final키워드를 이용한다. float final pi = 3.14f; 위와 같이 final키워드를 이용하게 되면 후에 실수로 pi값을 변경하면 오류 메시지를 출력하게 된다. 또한 상수는 구분하기 위해 대문자로 표기한다. float final PI = 3.14f;
2022.06.30 -
리터럴(literal)
리터럴이란? > 그 자체로 값을 의미하는 것 int a = 3; char b = 'A'; string abc = "ABC"; 위의 코드에서 3, 'A', "ABC"는 리터럴이다 . 리터럴의 접두사와 접미사 종류 리터럴 접미사 논리형 false, true X 정수형 123, 0b0101, 077, 0xFF, 100L L 실수형 3.14 3.0e8, 1.4f, 0x1.0p-1 f,d 문자형 'A', '1', '\n' X 문자열 "ABC", "123", "A", "true" X > 정수형에서 long type의 경우 리터럴 뒤에 L을 붙인다. > 실수형에서 타입이 float일때는 f, double일때는 d를 붙인다. 보통 d는 생략이 가능하다. > 접미사는 대소문자의 구별이 없다! long I = 10_000..
2022.06.30 -
자주 발생하는 에러와 해결 방법
자바로 프로그래밍을 하다보면 여러 에러가 발생합니다. 이에 따라 자주 발생하는 기본적인 에러와 해결방법을 정리하겠습니다. 1. cannot find symbol 또는 cannot resolve symbol 지정된 변수나 메서드를 찾을 수 없다는 뜻으로 선언되지 않은 변수나 메서드를 사용하거나, 변수 또는 메서드의 이름을 잘못 사용한 경우에 발생합니다. 철자 뿐 만아니라 대소문자의 일치여부도 확인하여야 합니다. 2. ';' expected 세미콜론 ';'이 필요한 곳에 없다는 뜻입니다. 자바의 모든 문장의 끝에는 ';'을 붙여주어야 합니다. 3. Exception in thread "main" java.lang.NoSuchMethodError: main 'main메서드를 찾을 수 없다'는 뜻으로 클래스 내..
2022.06.30 -
자바란?
Java > 자바는 썬 마이크로시스템즈(Sun Microsystems)에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다. > TIOBE INDEX에 따르면 2022 6월 기준 프로그래밍 언어 선호도 3위 언어이다. 자바의 특징 > 운영체제(Operating System, 플랫폼)에 독립적이다. > 객체 지향적이다. > 자동 메모리 관리(Garbage Collection)를 한다. > 네트워크와 분산처리를 지원한다. > 멀티 쓰레드를 지원한다. > 동적 로딩(Dynamic Loading)을 지원한다. > 비교적 배우기 쉽다. 자바 활용도 > 웹 애플리케이션 > 모바일 애플리케이션 > 엔터프라이즈 애플리케이션 > 웹/앱 서버 자바 프로그램 작성 / 실행 과정 Java 소스코드는 ..
2022.06.30