본문 바로가기

Everyday Study64

2024.07.23 (화) { .gitignore, git diff, git add, (Committed, Modified, Staged), git commit -m } git add 1. 수정된 파일을 스테이징 영역에 추가하는 것git add 명령어의 가장 기본적인 용도는 파일을 스테이징 영역(Index)에 추가하는 것입니다. 이는 수정된 파일이 다음 커밋에 포함되도록 준비하는 단계입니다. Git은 작업 디렉토리의 변경 사항을 커밋하기 전에 스테이징 영역에 추가해야 합니다.git add modifiedfile.txt이 명령어는 modifiedfile.txt 파일의 변경 사항을 스테이징 영역에 추가하여, 다음 커밋에 포함될 준비를 합니다. 2. 새로 생성된 파일을 버전 관리에 추가 (트랙 상태로 만드는 것=추적하라고 지시하는 것)새로운 파일을 리포지토리에 추가할 때 git add 명령어를 사용하여 Git이 해당 파일을 추적하게 만듭니다. Git은 기본적으로 새로운 파일을.. 2024. 7. 23.
2024.07.22 (월) { 예외처리, try-catch } predicate 인터페이스 if (condition.test(item)) Predicateboolean test(T t);​- T를 인자로 받고, Boolean형을 리턴한다 어레이리스트, 링크드리스트 장단점 언체크드는 던지기할필요 x자바 가상 머신(JVM)이 발생시키는 예외자바 가상 머신(JVM)은 프로그램 실행 중에 다양한 예외를 발생시킬 수 있습니다. 이러한 예외는 주로 런타임 오류로 인해 발생하며, 프로그램의 정상적인 실행을 방해할 수 있습니다. 자바의 예외는 java.lang.Throwable 클래스의 서브클래스로 표현됩니다. Exception과 Error 두 가지 주요 서브클래스가 있습니다. 주요 예외 클래스Exception: 프로그램의 논리적 오류나 외부 조건으로 인해 발생하는 예외. 주로 .. 2024. 7. 22.
2024.07.19 (금) { 얕은&깊은복사 , 컬렉션구현방식, sublist - view (부분집합) } Java의 컬렉션 프레임워크에 대한 설명큐(Queue) 인터페이스는 컬렉션(Collection) 인터페이스를 상속받고, 컬렉션(Collection) 인터페이스는 이터러블(Iterable) 인터페이스를 상속받습니다. 이터러블(Iterable) 인터페이스에는 이터레이터(Iterator) 인터페이스가 정의되어 있습니다.얕은 복사 (Shallow Copy)얕은 복사는 객체의 최상위 수준만 복사하며, 중첩된 객체들은 원본 객체와 같은 참조를 공유하게 됩니다. 즉, 객체의 직접적인 속성만 복사되고, 그 속성이 참조하는 다른 객체들은 원본 객체와 동일한 참조를 가집니다.특징:최상위 객체의 속성만 복사중첩된 객체는 동일한 참조를 공유메모리 사용량 적음원본 객체의 중첩된 객체를 수정하면 복사된 객체에도 영향을 미침 깊은.. 2024. 7. 19.
2024.07.18 (목) { toArray, Iterable, copyOf, Key-Value Pair } Iterable 인터페이스자바에서 Iterable 인터페이스는 컬렉션 객체를 순회(반복)할 수 있는 기능을 제공합니다. 이 인터페이스는 java.util 패키지에 포함되어 있으며, Iterator를 반환하는 iterator() 메서드를 정의하고 있습니다. 모든 컬렉션 클래스(예: List, Set, Queue)는 Iterable 인터페이스를 구현합니다. Iterable 인터페이스 정의Iterable 인터페이스는 다음과 같이 정의됩니다:package java.lang;import java.util.Iterator;public interface Iterable { Iterator iterator();}주요 메서드iterator(): 컬렉션을 순회할 때 사용할 Iterator를 반환합니다.예제 코드Ite.. 2024. 7. 18.
2024.07.17 (수) { raw type, Arrays.asList, 자바에 2가지의 경고 "unchecked", "varargs" } raw type Raw type은 Java의 제네릭스(Generic)를 사용할 때 타입 파라미터를 명시하지 않은 경우를 의미합니다. 간단히 말해, 제네릭 클래스나 인터페이스를 사용할 때 타입을 지정하지 않고 사용하는 것을 raw type이라고 합니다. 이는 Java 5 이전의 호환성을 위해 제공되며, 제네릭스가 도입되기 이전의 코드와 호환성을 유지하기 위해 존재합니다. Raw Type의 문제점raw type을 사용하면 다음과 같은 문제가 발생할 수 있습니다:타입 안전성 손실: 컴파일러가 타입을 체크하지 않기 때문에 잘못된 타입의 객체가 저장될 수 있습니다. 이는 런타임 오류를 발생시킬 수 있습니다.가독성 저하: 코드를 읽는 사람이 타입 정보를 알 수 없기 때문에 코드의 가독성이 떨어집니다.경고 발생: 컴.. 2024. 7. 17.
2024.07.16 (화) { valueOf, 직렬화(Serialize), is-a, 마커인터페이스 } String 클래스의 valueOf() 메소드 String 클래스의 valueOf() 메소드는 다양한 타입의 값을 문자열(String)로 변환하는 데 사용됩니다. valueOf()메소드는 오버로딩되어 여러 가지 타입을 인자로 받을 수 있으며, 각 타입에 따라 적절한 문자열 표현을 반환합니다. 다음은 String 클래스의 valueOf() 메소드에 대한 설명과 예제입니다. valueOf() 메소드의 형태static String valueOf(boolean b)static String valueOf(char c)static String valueOf(char[] data)static String valueOf(char[] data, int offset, int count)static String valueO.. 2024. 7. 16.