자바 가상머신은 운영체제 위에서 실행되는 하나의 프로그램이며, 자바 프로그램을 실행시킴자바는 동적 로드, 즉 컴파일 타임이 아니라 런타임에 클래스를 로드하고 링크(검증)하는 특징이 있는데 이러한 동적로드를 클래스 로더가 담당함 \-> 한 번에 메모리에 올리지 않고, 애
이때 음의 정수 -1을 위의 방식대로 10000001로 표시하면,00000001 + 10000001 = 10000010위 연산의 경우 어떠한 방식으로 해석을 하건 0이 될 수 없음 -> 음의 정수는 다른 방식으로 표현해야 함양의 정수의 이진수 표현에 2의 보수를 취한
Range가 더 작은 타입을 더 큰 타입에 대입할 때, 자동으로 큰 타입으로 변환되는 현상크기가 더 큰 타입을 더 작은 타입에 대입할 때, 타입을 명시하여 강제로 형변환 시키는 것→ 데이터 손실이나 변형이 발생할 수 있음프로모션과 캐스팅을 객체에서도 사용할 수 있음 h
접근 제어자를 사용하면 변수나 메서드의 사용 권한을 설정할 수 있음종류: private, dafault, protected, publicprivate < default < protected < public 순으로 많은 접근을 허용함private이 붙은
객체를 만들어 내기 위한 설계도/틀이자, 연관되어 있는 변수와 메서드의 집합임속성(필드,변수)와 동작(메서드)는 생략될 수도, 하나 이상 작성될 수도 있음JVM 메모리의 메소드 영역에 로드됨클래스에 선언된 모양 그대로 생성된 실체❓클래스의 인스턴스(instance)라고
자바 가상머신이 클래스 파일을 찾는 경로클래스 패스를 지정하지 않으면, 자바 가상머신은 필요한 클래스를 '현재 디렉터리'에서 찾음클래스 패스는 프로그래머가 직접 지정할 수 있음단, 프로그래머에 의해 클래스 패스가 설정되면 '현재 디렉터리'는 클래스 탐색 경로에서 제외됨
자바 애플리케이션을 개발 및 관리하기 위한 환경, 즉 자바 프로그래밍 언어로 작성된 응용 프로그램을 실행하는데 도움이 되는 소프트웨어 또는 프로그램 모음Java 언어, JDK, JRE, 자바 컴파일러, JVM으로 구성되어 있음자바 플랫폼의 종류에는 Java SE, Ja
JAVA컴파일하면 JVM에서만 실행가능한 바이트코드 형태의 클래스 파일이 생성되고, JVM을 통해 클래스 파일을 실행할 수 있음 런타임에 필요한 클래스들이 JVM에 링크되며 클래스 로더가 동적으로 필요한 클래스를 로딩함자바의 클래스 파일이 JVM에 실행되기 때문에 플랫
메모리 관리 기법, 프로그램이 동적으로 할당했던 메모리 영역 중 필요 없게 된 영역을 해제하는 기능동적으로 할당했던 메모리 영역 - 힙 영역(인스턴스 저장)의 메모리필요 없게 된 영역 - 어떤 변수도 가리키지 않게 된 영역ex)즉 인스턴스에 레퍼런스가 있다면 Reach
현실 세계의 사물 및 개념들을 객체로 보고, 그 객체를 조립하여 프로그래밍 하는 기법절차 지향 프로그래밍의 코드 중복제거가 가장 큰 목적객체를 추출해 객체들 간 관계를 결정하고, 이들의 상호작용에 필요한 함수와 변수를 설계 및 구현함사람의 사고와 가장 비슷하게 프로그래
try(…)에서 선언된 객체들에 대해서 try가 종료될 때 자동으로 자원을 해제해주는 기능 자원(resource)이란? 외부의 데이터(DB, Network, File)를 말함 자바 내부에 위치한 요소가 아니기 때문에 자바 코드에서 접근하려고 할 때 예
1️⃣ 동일성(Identity) 두 객체와 완전히 같은 경우를 의미함 두 객체의 메모리 주소가 같기 때문에 두 참조 변수가 같은 객체를 가리키고 있음 즉, 내용과 주소값이 모두 같음 자바에서 동일성은 비교 연산자 ‘==’로 확인할 수 있음 2️⃣ 동등성(Equali
모든 클래스 상속계층도의 제일 위에 위치하는 조상클래스다른 클래스를 상속하지 않는 모든 클래스는 자동적으로 Object 클래스를 상속하게 됨Object 클래스에는 toString(), equals와 같은 모든 인스턴스가 가져야 할 기본적인 11개의 메소드가 정의되어 있
프로그램이 실행 중 어떤 원인에 의하여 오작동을 하거나 비정상적으로 종료되는 경우가 있는데, 이러한 결과를 초래하는 원인을 프로그램 오류라고 함프로그램 오류는 발생시점에 따라 컴파일 에러, 런타임 에러 및 논리적 에러로 나눌 수 있음컴파일 에러소스코드를 컴파일하면 컴파
<span style="color:Log.d("Array", "$students0")Log.d("Array", "$students.get(1)")var mutableList = mutableListOf("MON", "TUE", "WED")var stringList
작성된 클래스를 사용하기 위해서는 생성자가 호출되어야 하는데, 코틀린은 프라이머리와 세컨더리 2개의 생성자를 제공함클래스의 헤더처럼 사용할 수 있으며 constructor 키워드를 사용해서 정의하는데, 조건에 따라 생략할 수도 있음생성자에 접근 제한자나 다른 옵션이
<span style="color:null 값을 입력하기 위해서 변수를 선언할 때 타입 뒤에 ?를 입력함Nullable인 변수 다음에 '?.'을 사용하면 해당 변수가 null일 경우 '?.' 다음의 메소드나 프로퍼티를 호출하지 않음원본 변수가 null일 때 넘겨줄