2025/05/02(3)
-
자바스크립트 문제 풀이 기본적인 구조
// Node.js의 readline 모듈을 불러옴const readline = require('readline');// 즉시 실행 함수 (async를 사용하기 위한 비동기 함수)(async () => { // readline 인터페이스 생성 (표준 입력을 받기 위한 설정) let rl = readline.createInterface({ input: process.stdin }); // W와 R 변수를 루프 밖에서 사용하기 위해 미리 선언 let W, R; // 입력 스트림에서 한 줄씩 읽어오는 비동기 루프 for await (const line of rl) { // 입력받은 line을 공백으로 분리하고 숫자로 변환하여 W, R에 ..
2025.05.02 -
인터페이스에 정의할 수 있는 요소들
1. 추상 메서드 (기본)interface Example { void method1(); // public abstract 자동 추가 public abstract void method2(); // 명시적 선언}2. 상수interface Example { int MAX_COUNT = 100; // public static final 자동 추가 public static final int MIN_COUNT = 0; // 명시적 선언}3. default 메서드 (Java 8+)interface Example { default void defaultMethod() { // 구현 코드 작성 가능 }}4. static ..
2025.05.02 -
기타제어자 (Other Modifiers)
기타 제어자(Non-access Modifier)의 종류기본 구조 제어자 (설계 관련) static - 클래스 수준에서 공유되는 멤버를 정의하여 메모리에 한 번만 할당되고 모든 인스턴스가 공유하게 함final - 값 변경, 상속, 오버라이딩을 금지하여 불변성을 보장함 abstract - 미완성 설계도를 제공하여 자식 클래스에서 반드시 구현하도록 강제함 특수 목적 제어자 (동작 관련) synchronized - 멀티스레드 환경에서 한 번에 하나의 스레드만 접근할 수 있도록 동기화를 보장함 transient - 객체 직렬화 과정에서 특정 필드를 제외하여 보안성을 확보하거나 최적화함 volatile - 멀티스레드 환경에서 변수의 값을 메인 메모리에서 직접 읽고 써서 항상 최신 값을 보장함1. static개념:..
2025.05.02