본문 바로가기

Java

(6)
[Java] Pattern, Matcher Class 자바에서는 정규식을 활용하여 문자열을 검증하거나 탐색할 수 있도록 Pattern, Matcher 클래스를 제공합니다. 이번 글에서는 두 개의 클래스 사용법과 함수에 대해 정리를 해보겠습니다. ■ Pattern 클래스 1) 설명 정규표현식이 컴파일된 클래스, 정규 표현식에 대상 문자열을 검증하거나 활용하기 위해 사용되는 클래스 2) 주요 함수 static Pattern compile(String regex) 주어진 정규식을 갖는 패턴을 생성 String pattern() 컴파일된 정규 표현식을 반환 Matcher matcher(CharSequence input) 패턴에 매칭할 문자열을 입력하여 Matcher 객체를 생성 static boolean matcher(String reges, CharSequenc..
[자바] 컬렉션 프레임워크(Collection Framework) ■ Collection Framework - 컬렉션 프레임워크란 데이터 군(다수의 데이터)을 저장하는 클래스들을 표준화한 설계 - 아래의 표는 컬렉션 프레임워크의 핵심 인터페이스와 그 특징이다. 인터페이스 특징 List 순서가 있는 데이터의 집합, 데이터의 중복을 허용 구현 클래스 : ArrayList, LinkedList, Stack, Vector 등 Set 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용 X 구현 클래스 : HashSet, TreeSet 등 Map 키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합 순서는 유지되지 않으며, 키는 중복을 허용하지 X, 값은 중복을 허용 구현 클래스 : HashMap, TreeMap, HashTable 등 ■ List 인터페이스와 구..
[자바] 메모리 구조 ■ 자바의 프로그램 실행 구조 1) JVM이란? - Java Virtual Machine의 약자로 자바 가상 머신 - 자바와 운영체제 사이의 중개자 역할을 수행, 자바가 운영체제에 구애 받지 않고 프로그램을 수행할 수 있도록 도와준다. - Garbage Collector를 사용한 메모리 관리도 자동으로 수행 - 스택 기반으로 동작 2) 자바 프로그램의 실행 구조 - 자바로 구현된 응용 프로그램은 JVM에 의해 실행되기 때문에 어떤 운영체제에서도 동일한 결과를 갖는다. - JVM은 운영체제에 종속적 - 응용 프로그램이 실행되면, JVM은 시스템으로부터 프로그램을 수행하는데 필요한 메모리를 할당 받음 ■ JVM의 메모리 구조 1) 자바 프로그램의 실행 - Source Code 파일(.java)을 Java C..
[Java의 정석 3판] chapter 06. 객체지향 프로그래밍 객체지향언어 1. 코드의 재사용성이 높다 새로운 코드 작성 시, 기존의 코드를 이용하여 쉽게 작성할 수 있다. 2. 코드 관리 용이 코드 간의 관계를 이용해서 적은 노력으로 쉽게 코드 변경 가능 3. 신뢰성이 높은 프로그래밍 가능 제어자와 메서드를 이용해서 데이터를 보호하고 올바른 값을 유지하도록 하며, 코드의 중복을 제거하여 코드의 불일치로 인한 오동작을 방지 ■ 객체 배열 많은 수의 객체를 다뤄야할 때, 배열로 다루면 편리 객체 배열 안에는 객체의 주소가 저장 참조변수들을 하나로 묶은 참조변수 배열 예를 들어, TV 클래스의 객체 배열을 생성 TV[] tvArr = new TV[3]; //객체 배열의 선언 ※ 주의할 점 객체 배열을 선언만 하고 초기화를 하지 않으면 오류 발생, 꼭 초기화도 진행 tv..
[Java의 정석 3판] chapter 02. 변수 변수의 타입 1. 변수(variable) 하나의 값을 저장하기 위한 공간 2. 상수(constant) 값을 한번만 저장할 수 있는 공간 3. 리터럴(literal) 그 자체로 값을 의미하는 것 정수형과 실수형에는 여러 타입이 존재하므로, 리터럴에 접미사를 붙여서 타입을 구분 리터럴의 타입과 접미사 종류 리터럴 접미사 논리형 true, false 없음 정수형 123, 0b0101, 077, 0xFF, 100L L 실수형 3.14, 1.4f f, d 문자형 'A', '1' 없음 문자열 "ABC", "123", "A", "true" 없음 ※ 리터럴에 접미사가 붙는 타입은 long, float, double뿐인데, double은 생략이 가능하므로 long과 float의 리터럴에 접미사를 붙이는 것만 주의
[Java의 정석 3판] chapter 01. 자바 소개 자바 언어의 특징 1. 운영체제에 독립적 자바 응용프로그램은 JVM하고만 통신 JVM이 자바 응용프로그램으로부터 전달받은 명령을 해당 운영체제가 이해할 수 있도록 변환 자바로 작성된 프로그램은 운영체제에 독립적이지만, JVM은 운영체제에 종속적 2. 객체지향언어 객체지향개념의 특징인 상속, 캡슐화, 다형성이 잘 적용된 순수한 객체지향언어 3. 자동 메모리 관리 가비지컬렉터(garbage collector)가 자동적으로 메모리를 관리해주기 때문에 프로그래머는 메모리를 따로 관리 하지 않아도 된다. 4. 네트워크와 분산처리 지원 네트워크 프로그래밍 라이브러리(Java API)를 통해 네트워크 관련 프로그램 개발 용이 5. 멀티쓰레드 지원 6. 동적 로딩(Dynamic Loading) 지원 실행 시 모든 클래..