JAVA/WhiteShip Java Live Study 2021. 6. 12.
[JAVA] 패키지란? (package, import, classpath...)
🎁 패키지 패키지(package)란, 클래스 묶음이다. 패키지에는 클래스 또는 인터페이스를 포함시킬 수 있으며, 서로 관련된 클래스들끼리 그룹 단위로 묶어 놓음으로써 클래스를 효율적으로 관리할 수 있다. 같은 이름의 클래스일 지라도 서로 다른 패키지에 존재하는 것이 가능해서, 다른 개발자가 개발한 클래스 라이브러리의 클래스 이름과 충돌하는 것을 피할 수 있다. 클래스가 물리적으로 하나의 클래스파일(*.class)인 것과 같이 패키지는 물리적으로 하나의 디렉토리이다. 예를 들어, java.lang.String 클래스는 디렉토리 java의 서브 디렉토리인 lang에 속한 String.class 파일이다. 🧡 하나의 소스파일에는 첫 번째 문장으로 단 한번의 패키지 선언만을 허용한다. 🧡 모든 클래스는 반드시 ..
JAVA/WhiteShip Java Live Study 2021. 5. 17.
[JAVA] 연산자 (화살표, 삼항, switch...)
산술 연산자 +, -, *, /, % 비트 연산자 &, |, ^ 관계 연산자 , ≤, ≥, ==, ≠ 논리 연산자 &&, || instanceof instanceof 란 참조변수가 참조하고 있는 인스턴스의 실제 타입을 알아보기 위해 사용하는 연산자이다. [참조변수] instanceof [타입/클래스명] 연산 결과는 boolean이다. 결과가 true이면 참조 변수가 검사한 타입으로 형 변환이 가능하다는 것을 뜻한다. 참고로, 값이 null인 참조변수에 대해 instanceof 연산을 수행하면 false를 결과로 얻는다. 조상타입의 참조변수로 자손 타입의 인스턴스를 참조할 수 있기 때문에, 참조 변수의 타입과 인스턴스의 타입이 항상 일치하지는 않는다. 때문에 조상 타입의 참조변수로는 실제 인스턴스의 멤버들..
JAVA/WhiteShip Java Live Study 2021. 5. 17.
[JAVA] 자바 데이터 타입, 변수 그리고 배열
프리미티브 타입 종류와 값의 범위 그리고 기본 값 종류 데이터 형 표현 범위 기본 값 할당되는 메모리 크기 논리형 boolean true 또는 false false 1 byte 문자형 char '\u0000' ~ 'uFFFF' (16비트 유니코드 문자 데이터) '\u0000' 2 byte 정수형 byte -128~127 0 1 byte short -32768 ~ 32767 0 2 byte int -2147483648 ~ 2147483647 (-21억 ~ +21억) 0 4 byte long 9223372036854775808 ~ 9223372036854775807(-100경 ~ + 100경) 0L 8 byte 실수형 float 1.4E-45 ~ 3.4028235E38 0.0F 4 byte double 4...
JAVA/WhiteShip Java Live Study 2021. 5. 15.
[JAVA] JVM이란? 개념 및 구조 (JDK, JRE, JIT, 가비지 콜렉터...)
JVM이란 무엇인가 Java Virtual Machine의 줄임말. 직역하면 '자바를 실행하기 위한 가상 기계(컴퓨터)'라고 할 수 있다. Java 는 OS에 종속적이지 않다는 특징을 가지고 있다. OS에 종속받지 않고 실행되기 위해선 OS 위에서 Java 를 실행시킬 무언가가 필요하다. 그게 바로 JVM이다. 즉, OS에 종속받지 않고 CPU 가 Java를 인식, 실행할 수 있게 하는 가상 컴퓨터이다. Java 소스코드, 즉 원시코드(*.java)는 CPU가 인식을 하지 못하므로 기계어로 컴파일을 해줘야한다. 하지만 Java는 이 JVM 이라는 가상머신을 거쳐서 OS에 도달하기 때문에 OS가 인식할 수 있는 기계어로 바로 컴파일 되는게 아니라 JVM이 인식할 수 있는 Java bytecode(*.cla..