자바
-
java 스트림java 2023. 1. 17. 23:50
stream은 java8에 새로 추가된 기능으로 배열 요소를 특정 기준에 맞춰 정렬하거나, 특정 값에 따라 필터링해주는 기능을 간결하게 구현할 수 있도록 해주는 클래스입니다. 간단한 예제들을 통해 stream에 대해 알아가보도록 하겠습니다. [예제 1] public class Test { public Test(int id, String value){ this.id = id; this.value = value; } int id; String value; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getValue() { return value; } public void setValue(S..
-
자바 Static과Heapjava 2023. 1. 15. 23:02
java에서는 static을 이용하여 변수와 메소드를 만들 수 있습니다. 이 둘을 합쳐 정적 멤버 혹은 클래스 멤버라고 합니다. 정적 멤버는 객체에 소속된 멤버가 아니라 클래스에 고정된 멤버입니다. 따라서 정적 멤버가 만들어 졌을때 저장되는 공간도 다릅니다. new 생성자를 이용해 생성되는 객체는 Heap 영역에 생성되는데, class는 Static 영역에 생성됩니다. 정적 멤버 역시도 Static 영역에 생성됩니다. 이 두 영역의 차이점은 Static 영역에 한번 생성되면 프로그램이 종료될 때 까지 메모리가 할당된 채로 존재하게 되고 Heap 영역에 생성되면 Garbage Collector를 통해 할당된 객체들이 수시로 관리를 받습니다. 따라서 Static을 자주 사용하면 프로그램 종료시까지 메모리가 ..