Programming Language(119)
-
[JAVA] 객체 지향 프로그래밍(OOP : Object-Oriented Programming)의 특징
■ 객체 지향 프로그래밍의 4가지 특징 ■ 캡슐화(encapsulation) 캡슐화는 말그대로의 캡슐이라는 의미적인 표현에서 알 수 있듯이 크게 2가지 특징을 확인할 수 있습니다. 우선은 이해를 돕기 위해 캡슐형태의 감기약을 예시로 설명하겠습니다. 첫번째, 캡슐형태의 감기약 안에는 감기를 치료한다는 한가지의 목적을 갖는 연관성을 띄는 다양한 약품들이 들어 있다는 것을 알 수 있다. OOP에서도 특정 역할을 하는 속성(멤버변수), 기능(메서드)을 객체로 묶은 것을 의미합니다. 두번째, 캡슐이 내부의 약품들에 변질과 외부의 환경으로부터 보호 하고 있듯이, OOP에서도 접근제어자와 같은 기능들을 통해 외부접근으로부터 데이터를 보호하고 정보를 은닉하는 것을 의미합니다 ■ 추상화(abstraction) 추상화의 ..
2020.09.24 -
[JAVA] 스트림(Stream) API 활용
■ 스트림(Stream) 이란 ? 스트림을 이용하면 선언형(질의로 표현할 수 있다)으로 컬렉션 데이터를 처리할 수 있다. 스트림은 배열(Arrays) 또는 컬렉션(collection) 처리, 관리하기에 유용한 기능을 지원한다. ※ 대표적인 메서드 메서드 설명 void forEach(Consumer
2020.08.07 -
[JAVA] Arrays 클래스 활용 (배열 다루기)
■ Arrays 클래스 Arrays 클래스에는 배열을 다루기 위한 다양한 메소드가 포함되어 있다. Arrays 클래스의 모든 메소드는 클래스 메소드(static method)이므로, 객체를 생성하지 않고도 바로 사용할 수 있다. ■ Arrays 대표적인 메서드 정리 메서드 설명 static Object[] copyOf(Object[] original, int newLength) 배열을 원하는 길이만큼 복사한 배열을 반환한다. static Object[] copyOfRange(Object[] original, int from, int to) 배열의 복사를 지정한 부분(시작 인덱스부터 끝 인덱스까지)을 복사한 배열을 반환한다. static void fill(Object[] a, int fromIndex, i..
2020.08.06 -
[JAVA] StringTokenizer 클래스 활용 (문자열 구분자로 자르기)
■ StringTokenizer 클래스 문자열을 구분자(delim)을 기준으로 토큰형태로 분리하는 작업에 유용하다. String 객체의 split 메서드와 유사하고 보다 섬세한 작업이 가능하다. ■ StringTokenizer 생성자 정리 생성자 설명 StringTokenizer(String str) 문자열 str를 기본 구분자(\t\n\r)로 분리 StringTokenizer(String str, String delim) 문자열 str를 특정 구분자(delim)로 분리 StringTokenizer(String str, String delim, boolean returnDelims) 문자열 str를 특정 구분자(delim)로 분리 returnDelims 가 true : 구분자 포함 returnDelims..
2020.08.06 -
[JAVA] JVM의 메모리 구조
■ JVM 이란? JVM(Java Virtual Machine)은 Java로 작성된 애플리케이션을 실행시키기 위해 반드시 필요한 가상 컴퓨터로서, Java 애플리케이션이 OS와 하드웨어에 독립적으로 실행가능하게 한다. OS와 하드웨어와의 관계가 독립적이라는 의미는 어떤 OS(Windows, Linux .. ) 라고 하더라도 해당 OS에 실행가능한 JVM만 존재한다면, Java 애플리케이션이 실행가능하다는 것이다. 단, JVM는 OS에 종속적이기 때문에 해당 OS에서 실행가능한 JVM이 필요하다. ■ Java 애플리케이션 실행 구조 예시) OS가 Windows일 경우 JVM은 Java 애플리케이션을 OS와 하드웨어에 구애받지 않고 실행가능하게 함으로써 Java 애플리케이션이 한번 작성되면 어떤 환경(OS,..
2020.08.05 -
[JAVA] Map 계열 (Hashtable/HashMap/Properties) 정리
■ Map 계열 데이터를 key/value 쌍으로 저장하는 자료구조이다. key는 중복이 없는 유일한 값으로 사용되며, value는 중복이 가능하다. 순서가 없기 때문에 랜덤으로 출력된다. ※ 대표적인 메서드 메서드 설명 put(Object key, Object value) putAll(Map m) key에 해당되는 value객체를 저장 value get(key) key에 해당되는 value 반환 remove(key) key에 해당되는 value 삭제 void clear() Map의 모든 객체를 삭제 boolean isEmpty() Map이 비어있는지 확인 Set keySet() Map에 저장된 모든 key객체를 Set 계열로 반환 Collection values() Map에 저장된 모든 값들을 Coll..
2020.08.04