목록JAVA (13)
블로그 이름 뭐하지

모던자바시장의 변화에 따라 자바 8부터는 새로운 요구사항을 맞이하게 되었는데,대표적으로 병렬처리와 함수형 프로그래밍의 도입이 있다.병렬처리는 스트림, 함수형 프로그래밍은 람다식에 도입했다. 1) 병렬처리빅데이터의 처리와, 병렬 프로그래밍 방식이 가능한 장비들이 보급됨에 따라 필요성이 증가했다.병렬처리란 여러 개의 작업을 동시에 실행하여 효율을 높이는 것을 의미한다. 여러 쓰레드를 사용하는 방식과 여러 프로세스를 사용하는 방식이 있는데,각각 멀티쓰레드, 멀티 프로세싱이라 불린다.순차적인 직렬 프로그램을 분할하고, 분할된 단위를 동시에 병렬로 수행하여 성능을 향상시킨다. 데이터 병렬화(백터화)어떠한 데이터 집합을 분해한 뒤 각 프로세서에 할당하여 동일한 연산을 수행하는 패턴테스크 병렬화수행할 작업들을 기능별..

프로세스운영 체제(OS)로부터 자원을 할당 받는 작업의 단위로, 실행 중인 프로그램을 의미한다.ex. JAVA 프로그램 실행시 해당 프로그램은 프로세스라는 이름으로 운영체제(Windows, Mac, Linux...) 위에서 실행OS 위 에서 실행되는 모든 프로그램은 OS가 만든 프로세스에서 실행되는 것(크롬 브라우저 창이 2개 띄워져 있으면 크롬 브라우저 프로세스도 2개가 실행되는 것) OS가 프로세스를 할당할 때, 프로세스 안에 프로그램 Code, Deta, 메모리 영역(Stack, Heap)을 함께 할당한다. Code : Java main 메서드 같은 코드Data : 프로그램이 실행 중 저장할 수 있는 공간(ex. 전역변수, static 변수, 배열...)Memory(메모리 영역): Stack(지역..
타입을 일반화하는 것.클래스 내부에서 개별적으로 타입을 지정하지 않고,외부(인스턴스 생성 시, 메서드 호출 시)에서 타입을 지정한다.class MyArray{ int element; void setElement(int element) { this.element = element; } int getElement() { return element; }}일반적인 타입지정△------제네릭사용▽class MyArray { T element; void setElement(T element) { this.element = element; } T getElement() { return element; }}//외부에서 타입을 지정한다.MyArray myArr01 = new MyArray..

예외오류와 예외의 차이오류(Error) : 일반적으로 회복이 불가능하다보통 시스템 레벨에서, 또는 환경적인 이유로 발생한다ex. 메모리 부족(OutOfMemoryError), 스택오버플로우(StackOverflowError)... 예외(Exception) : 일반적으로 회복이 가능하다(= 예외 발생을 인지하고 대응이 가능함)코드 레벨에서 발생하여 문제 상황에 대한 처리가 가능하다ex. 비정상적인 연산처리(ArithmeticException), Null 객체 참조(NullPointException)... 예외의 종류 1. 코드 실행 관점1) 컴파일 에러(예외).java파일을 .class파일로 컴파일 할 때 발생한다대부분 자바 언어의 규칙을 따르지 않아 발생한다.문법에 맞게 다시 작성하는 것으로 해결한다.프..
추상 클래스구체적이지 않은 추상적인 데이터를 담고 있는 클래스이다.미완성되어 인스턴스화가 불가능하며, abstract 키워드를 사용한다.추상 클래스는 추상 메서드를 포함(없어도 선언가능)할 수 있다.추상 클래스는 자식 클래스에 상속되어 자식 클래스에 의해서만 완성된다.여러개의 자식 클래스에서 공통적인 필드, 메서드를 추출해 만든다. 추상메서드구현되지 않은 미완성 메서드. abstract 키워드로 선언한다.추상메서드는 일반적인 메서드와 다르게 코드를 적는 블록{}이 없다.즉, 정의만 하고 실행 내용은 없는 것.public abstract class 추상클래스명 { //추상클래스 abstract 리턴타입 메서드이름(매개변수, ...); //추상메서드} 클래스 상속추상 메서도는 extends 키워드를 사용해..

부모클래스의 멤버(필드, 메서드)를 자식 클래스에게 물려주는 것이다.코드의 중복 제거, 재사용성의 증가로 생산성과 유지보수성이 유리해진다.클래스의 다중상속은 허용되지 않는다.(관계가 복잡해지는 문제가 생김) 상속은 extends 키워드를 사용한다.확장의 개념으로, 부모클래스가 자식클래스를 품는 것이 아니라,자식 클래스에 부모 클래스를 더해 확장되는 것이다. 1) 부모 클래스에 새로운 필드와 메서드가 추가되면자식클래스는 이를 상속받아 사용한다.2) 자식 클래스에 새로운 필드와 메서드가 추가되어도부모 클래스에는 영향이 없다.3) 자식 클래스의 멤버 개수 >= 부모 클래스의 멤버 개수 final 클래스와 final 메서드public final class Car{}public class SportCar e..