본문 바로가기

전체 글71

김영한의 실전 자바 - 자바 중급 2편: 컬렉션 프레임워크(feat. Comparable, Compartor, Stream, Optional) 컬렉션 프레임워크Collection, CollectionsList(ArrayList, LinkedList)Set(HashSet, LinkedHashSet, TreeSet)Queue, Deque(PriorityQueue, ArrayDeque)Hash, Map (HashMap, TreeMap, ConcurrentHashMap)Comparable, ComparatorStream, CollectorOptional1️⃣ Collection, Collections자바 컬렉션 프레임워크는 데이터를 효율적으로 저장하고 관리할 수 있는 데이터 구조와 알고리즘을 제공하는 라이브러리1. Collection 특징Collection은 List, Set, Queue의 상위 인터페이스이다. 컬렉션 프레임워크는 제네릭을 지원하여 타.. 2025. 1. 1.
#5: 2024년 회고 20242024년은 성장하는 개발자로 거듭나기 위해 다양한 경험을 쌓으며 도약의 발판을 마련한 한 해였다. 결론적으로, 올해를 포함한 지금까지의 모든 경험과 결과를 통해 나 자신을 객관적으로 돌아보고, 약점으로 느껴지는 부분들을 어떻게 보완할지를 구체적인 행동으로 옮길 계획을 세웠다. 이는 단순한 다짐이 아니라, 실천 가능한 목표와 전략을 바탕으로 한 견고한 계획이었다. 특히, 나는 무엇을 통해 이러한 계획을 세웠으며, 스스로에게 부족한 부분이 무엇인지 깊이 돌이켜보았다. 이를 통해 나의 약점을 명확히 인식하고, 이를 보완하기 위한 구체적이고 체계적인 노력을 지속해 나갈 수 있는 기반을 다질 수 있었다. 2024년은 단순히 성장의 해가 아니라, 나 자신을 재정립하고 더욱 단단해진 마음가짐으로 미래를 준비.. 2024. 12. 31.
자바 암기 노트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.
김영한의 실전 자바 - 기본편(feat. 전체 정리) 1. 클래스와 데이터1. 클래스 도입사람이 관리하기 좋은 방식으로 어떠한 개념을 하나로 묶는 것이다.예) Student 클래스public class Student { String name; int age; int grade;}클래스에 정의된 변수들(name, age, grede)을 변수, 또는 필드라 한다.멤버 변수(Member Variable) : 이 변수들은 특정 클래스에 소속된 멤버이기 때문에 이렇게 부른다.필드(Field) : 데이터 항목을 가리키는 전통적인 용어이다.자바에서 멤버 변수, 필드는 같은 뜻이다. 클래스에 소속된 변수를 뜻한다.클래스란 설계도이다.클래스를 사용하면 int, String과 같은 타입을 직접 만들 수 있다.(Student)사용자가 직접 정의하는 사용자 정의 타입을 .. 2024. 12. 23.
김영한의 실전 자바 - 자바 중급 1편: 4. 래퍼, Class 클래스 1. 래퍼 클래스 - 기본형의 한계1기본형의 한계자바는 객체 지향 언어이다. 그런데 자바 안에 객체가 아닌 것이 있다. 바로 int, double 같은 기본형(Primitive Type)이다. 기본형은 객체가 아니기 때문에 다음과 같은 한계가 있다.객체가 아님: 기본형 데이터는 객체가 아니기 때문에, 객체 지향 프로그래밍의 장점을 살릴 수 없다. 예를 들어 객체는 유용한 메서드를 제공할 수 있는데, 기본형은 객체가 아니므로 메서드를 제공할 수 없다.추가적으로, 객체 참조가 필요한 컬렉션 프레임워크를 사용할 수 없다. 그리고 제네릭도 사용할 수 없다. (이 부분은 뒤에서 설명한다.)null 값을 가질 수 없음: 기본형 데이터 타입은 null 값을 가질 수 없다. 때로는 데이터가 없음이라는 상태를 나타내야 .. 2024. 12. 15.