일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 2018 KAKAO BLIND RECRUITMENT 1차
- 카카오
- 부스트코스
- 자바
- 2019 카카오 공채
- c++
- CS 스터디
- gcp
- 비트마스크
- 2019 KAKAO BLIND RECRUITMENT
- 2020 카카오 공채
- 백준
- 2018 카카오
- 카카오 공채
- dfs
- set
- 2019 카카오 개발자 겨울 인턴십 코딩테스트
- 2018 KAKAO BLIND RECRUITMENT
- 삼성 SW 역량테스트
- 2018 카카오 공채
- gradle
- 젠킨스
- 프로그래머스
- Java
- 삼성 SW 기출문제
- Baekjoon
- 알고리즘
- bfs
- 2020 KAKAO BLIND RECRUITMENT
- map
- Today
- Total
목록CS/자바 (6)
아무코딩
Stream 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소 JAVA8에서의 변경 사항 람다표현식(lambda expression) : 함수형 프로그래밍 스트림 API(Stream API) : 데이터의 추상화 Java.time 패키지 : Joda-Time을 이용한 새로운 날짜와 시간 API 나즈혼(Nashorn) : 자바스크립트의 새로운 엔진. 이중 스트림 API 에 대해 자세히 다루어 보겠습니다. Stream API Stream API 이전 자바에서 많은 양의 데이터를 저장하기 위해서는 배열이나 컬렉션을 사용. 이러한 데이터를 접근하기 위해서는 반복문이나 반복자(iterator)를 사용하여 매번 코드를 작성. 이러한 코드들은 길고 가독성이 떨어지고 코드의 재사용이 불가능. Stream API..
익명클래스란 무엇인가? 클래스의 선언과 객체의 생성을 동시에 하기 때문에 단 한번만 사용될 수 있고, 오직 하나의 객체만을 생성할 수 있는 일회용 클래스. 이름이 없기 때문에 생성자를 가질 수 없다. 단 하나의 클래스를 상속받거나 단 하나의 인터페이스만을 구현 할 수 잇다. 하나의 클래스로 상속받는 동시에 인터페이스를 구현하거나 둘 이상의 인터페이스를 구현할 수 없다. 생성자 다음에 중괄호 열고 닫고가 나오면, 해당 생성자 이름에 해당하는 클래스를 상속받는 이름없는 객체를 만든다는 것을 뜻한다. //추상클래스 Action public abstract class Action{ public abstract void exec(); } //추상클래스 Action을 상속받은 클래스 MyAction public c..
컬렉션 프레임 워크란? 자바에서 컬렉션 프레임워크란 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미합니다. 컬렉션은 다수의 데이터, 즉 데이터 그룹을, 프레임워크는 표준화된 프로그래밍 방식을 의미합니다. 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화 하여 클래스로 구현해 놓은 것입니다. 이러한 컬렉션 프레임워크는 자바의 인터페이스(interface)를 사용하여 구현됩니다. 컬렉션 종류 인터페이스설명구현 클래스 List 순서가 있는 데이터의 집합으로, 데이터의 중복을 허용한다. 예) 대기자 명단 Vector, ArrayList, LinkedList, Stack, Queue 등 Set 순서가 없는 데이터의 집합으로, 데이터의 중복을 허용..
객체지향 프로그래밍(OOP) 객체지향 프로그래밍(Object Oriented Programming)이란? OOP는 컴퓨터 프로그램을 "객체"들의 모임으로 파악하고자 하는 프로그래밍의 패러다임 중에 하나이다. 각 객체들은 서로 메시지를 주고 받을 수 있으며 데이터를 처리 할 수있다. 절차 지향 C언어는 절차 지향 프로그래밍 이라고 하며, 쩔차 지향 프로그래밍은 프로세스가 함수 단위로 순서대로 진행되는 것을 말합니다. 객체 지향 프로그래밍의 장점 프로그램을 유연하고 변경이 용이하게 만든다. 프로그램의 개발과 보수를 간편하게 만든다. 직관적인 코드 분석을 가능하게 한다. 위의 장점들을 관통하는 객체 지향 프로그래밍의 중요한 특성은 강한 응집도(Strong Cohesion)과 약한 결합도(Weak Couplin..
Java의 특징 기본적으로 자바프로그램들은 JVM위에서 동작한다. JVM위에서 동작하기 위해서는 자바 바이트 코드가 필요하다. 이 자바 바이트코드는 개발자에 의해서 작성된 자바 소스코드(.java)를 자바컴파일러(javac)로 변환된 코드(.class)를 말한다. 자바 프로그램의 특징 JVM은 Bytecode를 구동하고 있는 OS에 맞추어 BinaryCode로 해석(Interpret)한다. 그러므로 JAVA 프로그램은 OS에 독립적이다. Bytecode는 클랩스 단위(.class)로 생성되므로, 프로그램의 수정이 일어나더라도 전체 소스코드를 다시 컴파일할 필요가 없다. 프로그램이 실행되는 도중에도 JVM은 OS로부터 메모리를 할당받아 스스로 관리한다. 대표적으로 GC(Garbage Collection)이..
Garbage Collector (가비지 컬렉터) 가비지(Garbage)란? 정리되지 않은 메모리 유효하지 않은 메모리 주소. int[] array = new int[3]; array[0] = 1; array[1] = 10; array[2] = 20; //새로운 String 타입의 배열을 만들어서 array가 새로운 배열을 가리키게함. array = new String{'가','나','다','라','마'}; 이때 기존의 array 가 가리키고 있던 int타입의 3칸짜리 배열은 주소를 잃어버려서 사용할수 없는 메모리가 된다.(정리되지 않은 메모리) 이를 자바에서는 가비지(Garbage)라고 부른다. 다른 예시 public class G..