본문 바로가기

Backend Study/나Java봐라~5

연산자 산술 / 비트 / 관계 / 논리 연산자 더보기 산술 연산자 : +, -, *, /, % 비트 연산자 비트(bit) 단위로 논리 연산을 할 때 사용하는 연산자. & 대응되는 비트가 모두 1이면 1을 반환. (비트 AND 연산) | 대응되는 비트 중에서 하나라도 1이면 1을 반환. (비트 OR 연산) ^ 대응되는 비트가 서로 다르면 1을 반환. (비트 XOR 연산) ~ 비트를 1이면 0, 0이면 1로 반전. (비트 NOT 연산, 1의 보수) 부호를 유지하고 지정된 수만큼 모두 오른쪽으로 이동. (Right shift 연산) >>> 명시된 수만큼 비트들을 모두 오른쪽으로 이동, 새로운 비트는 0으로 채움. (Unsigned right shift 연산) 관계 연산자 : ==, !=, >, >=, {method .. 2023. 8. 6.
자바 데이터 타입, 변수 그리고 배열 프리미티브 타입과 레퍼런스 타입 더보기 기본형 타입 (Primitive Type) - 기본값이 있어서 null이 존재하지 않음. - 실제 값을 저장하는 공간 → 스택에 저장됨 - byte, short, int, long, float, double, boolean, char 참조형 타입 (Reference Type) - 빈 객체를 의미하는 null 존재함 - 실제 값이 아닌 값이 저장되어있는 주소값을 저장하는 공간 → 힙에 저장됨 - class, interface, enum, array, String - 제네릭 사용 가능 변수의 스코프와 라이프타임 더보기 변수의 스코프 : 변수가 접근할 수 있는 유효 범위 (즉, 스코프란 변수를 사용할 수 있는 영역) - 변수가 선언된 블록 내에서만 변수에 접근할 수 있음.. 2023. 8. 3.
자바 소스파일(.java)을 JVM으로 실행하는 과정 JVM이란 무엇인가 더보기 - Java Virtual Machine / 자바를 실행하기 위한 기계 - OS에 종속적이지 않은 Java를 CPU가 인식, 실행할 수 있도록 도와줌 바이트코드란 무엇인가 더보기 - 가상 컴퓨터에서 돌아가는 실행 프로그램을 위한 이진 표현법 - 자바 바이트 코드 ? JVM이 이해할 수 있는 언어로 변환된 자바의 소스코드 JIT 컴파일러란 무엇이며 어떻게 동작하는지 더보기 - 프로그램을 실제 실행하는 시점에 기계어로 동적 번역(or JIT 컴파일) 하는 컴파일러 - 인터프리터 방식의 단점을 보완하기 위해 도입 *** 컴파일 ? 무언가 모아서 묶음으로 만드는 행위 / 프로그램 전체를 스캔하여 모두 기계어로 한번에 번역함 프로그램 전체를 스캔하기 때문에 초기 스캔 시간 오래걸림 + .. 2023. 7. 30.
익명클래스 → 람다 ??? 추상클래스 Person이 있고 그 안에 abstract 메소드가 2개가 있다. 그걸 Main 클래스에서 new 연산자를 이용해 Person 클래스를 상속 받는 익명 클래스의 인스턴스를 만들어준다. 메인 클래스 내부에 익명 클래스를 선언해주어 Person의 abstract 메소드를 override 해준다. 이것이 추상 클래스를 상속받는 익명 클래스의 사용 예시!! 이번엔 익명클래스의 진가를 인터페이스에서 알 수 있다고 하는데, 그 예시를 보자 여기 Calculator 클래스가 있고 그 안에 생성자와 result라는 메소드가 들어있다. result 메소드에 들어온 매개변수 Operate는 아래에서 확인 이렇게 Operate 인터페이스에는 그 인터페이스를 상속받는 Minus 와 Plus 클래스가 있음 이걸 또.. 2023. 4. 19.
인텔리제이에서 shift + F10 을 누르면 생기는 일 reference 네이버기술블로그 ariul-dev님 벨로그 차근차근 알아보는 Java 프로그램 실행 과정 나는 과연 Java 프로그램 실행 과정을 제대로 이해했을까⁉️ 🤔 velog.io 2023. 4. 13.
320x100