728x90 언어(Language)39 [Java] System 클래스 System 클래스 - java.lang.System 클래스는 자바의 표준 라이브러리 클래스 중 하나- 입출력, 시간 측정, 환경 정보, 프로그램 종료 등 시스템 관련 기능을 제공- 모든 메서드와 필드는 static으로 선언되어 있어, 객체 생성 없이 바로 사용 가능System.out.println("Hello"); // 객체 생성 없이 사용 주요 기능 요약기능대표 메서드 / 필드출력 / 입력System.out, System.err, System.in프로그램 종료System.exit(int)시간 측정System.currentTimeMillis(), System.nanoTime()환경 정보System.getProperties(), System.getenv()메모리 정보System.gc(), System.. 2025. 6. 8. [Java] Number 클래스 Number 클래스- java.lang.Number 클래스는 숫자형 포장 클래스들의 추상적인 부모 클래스즉, Integer, Double, Float, Long 등과 같은 클래스들의 공통 상위 클래스 왜 존재할까?- Number 는 다양한 숫자 타입을 하나의 타입으로 처리할 수 있게 해주는 추상 클래스 예를 들어 여러 숫자 타입을 같은 배열이나 메서드에서 처리하고 싶을 때public void printNumberInfo(Number num) { System.out.println("int: " + num.intValue()); System.out.println("double: " + num.doubleValue());}// 이렇게 하면 Integer, Double, Float 등 어떤 타입이 들.. 2025. 6. 8. [Java] Wrapper Class (포장 클래스) Wrapper Class (포장 클래스)- 기본형(primitive type)을 객체(Object)로 감싸는 클래스 기본형과 대응되는 포장 클래스 기본형 포장 클래스 (java.lang) byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean 포장 클래스를 사용하는 이유이유설명객체가 필요한 곳에서 사용예: 컬렉션(List, Map)은 기본형을 담을 수 없고 객체만 가능메서드 제공Integer.parseInt(), Double.toString() 등 유용한 메서드 활용null 허용객체는 null 저장 가능 → 기본형은 null 불가형변환 및 비교 기능equals(), compareTo() 등 메서드 사용 가.. 2025. 6. 8. [Java] StringBuffer 클래스 StringBuffer 클래스- 객체 생성 이후 문자열을 변경할 수 있는 클래스- 내부적으로 문자열을 저장하기 위해 크기가 조절되는 버퍼를 사용 📌 String은 불변(immutable) 객체 → 수정 시 새로운 객체 생성📌 StringBuffer는 가변(mutable) 객체 → 원래 객체 내부에서 문자열을 직접 수정 주요 특징항목설명패키지java.lang (자동 import)가변성문자열 내용을 자유롭게 추가, 삭제, 삽입 가능동기화스레드 안전함 (멀티스레드 환경에서 안전)성능StringBuilder보다 느리지만 안정성 확보됨 생성자StringBuffer sb1 = new StringBuffer(); // 빈 버퍼(초기 버퍼 크기는 16)StringBuffer s.. 2025. 6. 8. [Java] java.lang 패키지 java.lang 패키지- 자바에서 가장 기본이 되는 표준 패키지- 자바 프로그램을 작성할 때 항상 자동으로 import되는 패키지- import java.lang.*;를 명시하지 않아도 자동으로 포함되어 있어서 언제든 클래스 이름만으로 사용 가능 # 주요 클래스클래스 이름설명String문자열을 표현하는 클래스 (예: "hello")StringBuilder / StringBuffer문자열을 효율적으로 수정할 때 사용Object모든 클래스의 최상위 부모 클래스Class클래스 정보를 다루는 메타클래스System표준 입출력, 환경변수, 종료 등 관리 (System.out, System.in)Math수학 계산 (절댓값, 제곱근, 삼각함수 등)Integer, Double, Boolean 등기본형(primitive.. 2025. 6. 8. [Java] Object 클래스 Object 클래스- 자동으로 모든 클래스의 조상이 되는 클래스- 클래스 계층 구조에서 루트가 되는 클래스- 모든 클래스는 자동으로 Object 클래스를 상속받음- 주요 메소드로 clone(), equals(), hashCode(), toString() 등이 있음 toString( ) 메소드 - 객체의 정보를 문자열로 표현해주는 메서드- 객체를 출력할 때 자동으로 호출됨- 주로 디버깅용, 로그 출력용으로 오버라이딩해서 많이 사용 - 자식 클래스에서 재정의 가능(String, Integer 클래스 등에서 재정의되어 있음) // 기본형 (오버라이딩 안 했을 때)Object obj = new Object();System.out.println(obj.toString());// 출력 // java.lang.Obj.. 2025. 6. 8. [Java] 패키지 패키지란?- 자바 클래스 파일들을 폴더처럼 묶어서 관리할 수 있게 해주는 기능 📦 쉽게 말하면: 클래스 파일들을 정리정돈하는 폴더 개념이라고 보면 된다. # 패키지를 사용하는 이유- 클래스 관리 : 비슷한 기능의 클래스를 하나의 폴더로 정리 가능 - 클래스 이름 충돌 방지 : 같은 이름의 클래스라도 패키지가 다르면 사용 가능 - 접근 제한 설정 가능 : public, default 등 접근 제어자를 통해 외부 공개 여부 설정 가능# 패키지 선언 방법// 클래스 파일 상단에 package 을 선언package com.myapp.util;public class MyUtils { public static void sayHi() { System.out.println("Hi!"); }}/.. 2025. 5. 9. [Java] 람다식 람다식- Java 8 부터 도입된 함수형 프로그래밍 스타일의 문법- 인터페이스를 구현하는 객체 생성 코드를 수식 형태로 단순화 - 1개의 추상 메소드만 가진 인터페이스에서만 사용 가능 → 이런 인터페이스를 함수형 인터페이스라 하며, @FunctionalInterface 어노테이션으로 선언 가능 - 람다식 = 메서드를 간단한 식으로 표현한 것 # 람다식 문법- 매개변수 자료형은 인터페이스 정의에서 알 수 있으므로 자료형을 생략하고 변수 이름만 사용 가능- 매개변수가 1개면 괄호 생략 가능- 매개변수를 가지지 않으면 괄호만 남음- 실행할 코드에서 실행문이 1개이면 중괄호 생략 가능- 단, 실행문이 return문 뿐이라면 return과 세미콜론, 중괄호를 생략하고 1개의 수식만 적어야 함 인터페이스 객체변.. 2025. 5. 3. [Java] 제네릭 제네릭(Generic)- 데이터 타입을 일반화 하는 기능- 클래스나 메서드를 만들 때 데이터 타입을 고정하지 않고, 나중에 사용할 때 타입을 지정할 수 있도록 만드는 문법- 타입은 참조형만 사용 가능ArrayList list = new ArrayList();// 여기서 부분이 제네릭! # 문법- 괄호 안에 타입 매개변수(타입 파라미터)를 표시함- 컴마(,)를 사용해 여러 타입 매개변수를 지정 가능- 타입 매개변수는 타입을 전달 받기 위한 것- 타입 파라미터의 이름은 관례적으로 E, K, V, N, T 등을 사용함접근제어자 class 클래스이름 {...} # 제네릭 문법 키워드 문법 의미 타입 매개변수 선언(일반적인 타입)상위 타입 제한 하위 타입 허용 (하한 제한) 모든 타입 허용 (읽기 전용)맵.. 2025. 5. 3. 이전 1 2 3 4 5 다음 728x90