본문 바로가기

자바/개인 정리4

String 클래스 총정리(feat. StringBuilder, StringBuffer, Arrays) String1. String의 기본 개념정의: String은 문자의 배열로, 문자열 클래스자바의 String 클래스: java.lang 패키지에 속하며, 기본적으로 import 없이 사용 가능불변성: String 객체는 생성된 후 값을 변경할 수 없음. 값을 변경하면 새로운 객체가 생성2. String 생성 방법리터럴 방식상수 풀(Constant Pool)에 저장동일한 값이 있다면, 새로운 객체를 생성하지 않고 재사용String str1 = "Hello";new 키워드 사용힙 영역에 새 객체를 생성값이 동일하더라도 새로운 객체 생성String str2 = new String("Hello");3. String의 주요 특징Immutable(불변): 문자열을 변경하는 작업은 새로운 객체를 생성3.1참조 비교와.. 2025. 1. 11.
자바 암기 노트1 1. 객체 지향 프로그래밍에 대해 설명하시오.객체 지향 프로그래밍(OOP)은 데이터와 그 데이터를 조작하는 메서드를 하나의 객체로 묶어, 코드의 재사용성과 확장성을 높이는 프로그래밍 패러다임이다. OOP의 주요 특징은 다음과 같다.캡슐화: 데이터와 메서드를 객체 내부에 숨기고, 필요한 부분만 외부에 공개한다.상속: 기존 클래스의 특성을 재사용하고 확장할 수 있다.다형성: 동일한 메서드 이름으로 다양한 방식으로 동작하게 할 수 있다.추상화: 복잡한 시스템을 단순화하여 핵심 개념만 표현한다.이로 인해 유지 보수와 코드 관리가 쉬워지고, 프로그램의 유연성과 확장성이 향상된다. 2. 클래스와 인스턴스에 대해 설명하시오.클래스(Class)는 객체를 정의하는 설계도나 청사진으로, 객체의 속성과 동작(메서드)을 정의.. 2024. 12. 26.
JDK, JRE, JVM 총정리(feat. 자바 컴파일 과정) 1. JDKJDK(Java Development Kit)는 자바 프로그램을 개발하고 실행할 수 있는 환경을 제공하는 도구이다.JDK는 JRE(JVM, Java Class Library), Java Development Tools(javac, java, javap, apt, jar, ...)을 포함한다.예를 들어,소스 코드 컴파일러(javac): .java 파일을 바이트코드(.class)로 변환디버깅 도구(jdb): 디버깅 및 오류 분석JAR 생성 도구(jar): 클래스 파일들을 하나의 JAR 파일로 묶음C:\Program Files\Java 안에 JDK 폴더를 확인할 수 있고, JRE, Java Dev Tools가 있다.JDK 1.8(Java 8) 이전인 경우, JDK 폴더와 JRE 폴더로 따로 있다.현.. 2024. 12. 26.
자바(Java): 자바 프로그램의 실행 과정(feat. 컴파일 타임 환경, 런타임 환경, JVM) 자바 개발자나 프로그래머가 컴파일 타임 환경과 런타임 환경에 대해 이해하는 것은 자바 프로그램의 효율적인 개발, 디버깅, 성능 최적화를 위해 매우 중요합니다. 각각의 환경이 프로그램의 동작에 어떻게 영향을 미치는지 이해하면, 더 나은 프로그램 설계와 디버깅을 할 수 있습니다.컴파일 타임 환경과 그 중요성컴파일 타임은 자바 소스 코드가 바이트코드로 변환되는 과정을 의미합니다. 이 환경에 대한 이해는 코드의 구조적 안정성 및 오류 방지에 중요한 역할을 합니다. 컴파일 타임 환경을 이해해야 하는 이유는 다음과 같습니다.문법 및 타입 오류 탐지: 컴파일 타임에 문법 오류, 타입 불일치 등의 문제가 발생하면 프로그램이 컴파일되지 않기 때문에, 코드를 작성할 때 미리 이러한 문제를 해결할 수 있습니다. 즉, 실행 .. 2024. 9. 9.