Java(12)
-
[java] 자바 실행 과정 deep dive
자바는 OS와 독립적으로 실행시킬 수 있다. 그 이유는 JVM이 OS에 의존적이기 때문인데, 즉, OS마다 다른 JVM이 존재하기 때문이다. C/C++는 링커, 로더를 포함한 운영체제 바로 위에서 직접적으로 실행되므로, 빠르고 가볍다. 하지만 개발에 있어서 그만큼 메모리 회수 등 개발자가 신경써야 할 부분이 많다. 또한 C/C++ 등의 전통적인 언어는 컴파일 플랫폼(CPU 아키텍처 16bit, 64bit 등 및 OS)에 따라 자료형형의 크기가 변한다. 그래서 윈도우에서 컴파일한 C/C++파일은 리눅스에서 안 돌갈 수도 있다. JVM은 이러한 문제를 근본적으로 해결한다. 자바 소스코드(.java)가 자바 컴파일러(javac.exe)를 거치고 나면, 자바 바이트코드(.class)를 생성하는데, 이 자바 바..
2021.08.24 -
<추천글>[JAVA] 개발하면서 알아야할 기본사항1
1. Java의 Call by Reference 자바는 기본적으로, 객체에 대해서는 call-by-reference이지만, 8개의 primitive type에 대해서는 call-by-value가 적용된다고 생각하면 편합니다. [예제1] public class HelloWorld { public static void main(String[] args) { HelloWorld b = new HelloWorld(); int a = 100; b.doSomething(a); // 100이라는 숫자 자체가 넘어간다. System.out.println(a); // 100이 출력된다. } private void doSomething(int a) { a *= 2; } } 위 예제1에서 변수 a를 초기화하면 메모리의 4b..
2021.08.04