분류 전체보기(575)
-
remote repository를 local host pc에 add하는 방법
현재 remote repository가 empty history 상태일 경우,두 가지 방법의 local host pc에 add하는 방법이 있음. 1. …or create a new repository on the command lineecho "# hello" >> README.mdgit initgit add README.mdgit commit -m "first commit"git branch -M maingit remote add origin https://github.com/intheeast/hello.gitgit push -u origin main 2. …or push an existing repository from the command linegit remote add origin https:/..
2025.05.08 -
Configuration Utilities
Properties (속성)Properties은 키/값 쌍으로 관리되는 구성 값입니다. 각 쌍에서 키와 값은 모두 문자열(String) 입니다. 키는 값을 식별하고 검색하는 데 사용되며, 이는 변수 이름을 통해 변수 값을 조회하는 방식과 유사합니다. 예를 들어, 파일을 다운로드할 수 있는 애플리케이션은 마지막 다운로드에 사용된 디렉터리를 추적하기 위해 "download.lastDirectory"라는 이름의 속성을 사용할 수 있습니다. Properties을 관리하려면 java.util.Properties 클래스의 인스턴스를 생성합니다. 이 클래스는 다음과 같은 메서드를 제공합니다:스트림으로부터 키/값 쌍을 Properties 객체에 로드키를 이용하여 값 검색키와 값 나열키에 대한 열거 수행속성을 스트림에 ..
2025.05.05 -
Lesson: The Platform Environment
애플리케이션은 플랫폼 환경에서 실행됩니다. 이 플랫폼 환경은 기반 운영체제, 자바 가상 머신(Java Virtual Machine, JVM), 클래스 라이브러리, 그리고 애플리케이션이 실행될 때 제공되는 다양한 구성 데이터로 정의됩니다.이 레슨에서는 애플리케이션이 자신의 플랫폼 환경을 조사하고 구성하기 위해 사용할 수 있는 API들을 설명합니다.이 레슨은 다음의 세 가지 섹션으로 구성되어 있습니다:구성 유틸리티(Configuration Utilities) – 애플리케이션이 배포될 때나 사용자가 제공하는 구성 데이터를 접근하는 데 사용되는 API들을 설명합니다.시스템 유틸리티(System Utilities) – System 클래스와 Runtime 클래스에 정의된 다양한 유틸리티 API들을 설명합니다.PAT..
2025.05.05 -
null은 왜 "모든 참조 타입의 하위"로 간주되는가?
자바에서 흔히 "null은 모든 참조 타입의 하위 타입(subtype)"이라고 표현하는 이유는, 타입 계층 상의 직접적인 '하위 클래스'라는 뜻이 아니라, 타입 시스템에서 null 값이 모든 참조형 변수에 대입될 수 있기 때문입니다.즉, null은 특별한 리터럴로, 참조형 타입의 모든 변수에 할당할 수 있는 공통의 "값"이기 때문입니다. ✅ null은 왜 "모든 참조 타입의 하위"로 간주되는가?🔹 자바 타입 시스템 관점에서자바에서는 기본 타입(primitive type)을 제외한 모든 클래스, 배열, 인터페이스는 참조 타입(reference type)입니다.null은 이들 모든 참조 타입 변수에 할당할 수 있는 유일한 값입니다.String s = null;Number n = null;List list ..
2025.04.30 -
Type Inference 알고리즘의 원칙: '후반부 결과'를 사용하지 않는 이유
"추론 알고리즘은 프로그램 후반부의 결과를 사용하지 않습니다"라는 의미는 타입 추론(Type Inference)의 작동 방식을 이해할 때 중요한 개념입니다. 🔍 의미 해석: "프로그램 후반부의 결과를 사용하지 않는다"자바 컴파일러의 타입 유추(type inference) 알고리즘은, 어떤 expression의 타입을 결정할 때 항상 그 시점의 "앞 정보"만 보고 판단합니다.즉, "미래에 어떤 값이 될 것이다", "결국 어떤 타입이 될 것이다" 같은 후속 정보(후반부 결과)는 사용하지 않습니다.✅ 예시:List list = new ArrayList();위 코드에서는 ArrayList()의 타입 아규먼트를 명시하지 않았지만, 좌변이 List이라는 걸 보고 컴파일러는 ArrayList으로 타입을 유추합니다...
2025.04.30 -
Prime Number 17
자바에서 hashCode() 메서드 오버라이딩 시 흔히 사용되는 초기값 17 역시 단순한 임의의 숫자가 아니라, 컴퓨터 과학적·실무적 맥락에서 깊은 의미와 역할을 갖습니다. 🎯 핵심 요약hashCode()의 초기값으로 17을 사용하는 이유는, 해시코드 조합의 출발점을 예측 불가능하게 만들고, 필드 해시코드들의 충돌 가능성을 낮추기 위한 시드(seed) 역할을 하기 때문입니다. 📌 1. 해시코드에서 초기값의 역할은 무엇인가?✅ 해시코드 누적 합산 방식자바에서 다중 필드를 해시코드로 조합할 때는 다음과 같은 방식이 일반적입니다:int result = INITIAL; // 초기값result = 31 * result + field1; // 누적result = 31 * result + fiel..
2025.04.23