java
Java 10 이전에는 GC(Garbage Collector) 구현 구성 요소가 코드 기반 내에 흩어져 있어 쉽게 교체할 수 없었습니다. Java 10에서는 Garbage-Collector 인터페이스가 도입되어 대체 GC 구현을 연결할 수 있습니다. 또한 다른 가비지 수집 구현에서 코드 기반을 격리하는 데 도움이 됩니다. 이 기능은 JEP 304의 일부입니다.
Java 9에는 G1(가비지 우선) 가비지 수집기가 도입되었습니다. G1은 전체 가비지 수집을 피하지만 동시 스레드가 수집을 찾고 메모리가 충분히 빨리 회복되지 않는 경우 사용자 경험에 영향을 미칩니다. Java 10에서 이제 G1은 대체 전체 가비지 컬렉션을 사용합니다.
이 변경으로 G1은 Full GC를 병렬로 사용하여 최악의 대기 시간을 개선합니다. 현재 G1은 단일 스레드 마크 스윕 컴팩트 알고리즘을 사용합니다. JEP 307을 사용하면 병렬 스레드가 mark-sweep-compact 알고리즘을 시작합니다. 다음 옵션을 사용하여 스레드 수를 제어할 수 있습니다.
$java -XX:ParallelGCThreads=4
java
For-Each 루프는 배열을 탐색하는 데 사용되는 또 다른 형태의 for 루프입니다. for-each 루프는 코드를 크게 줄이고 루프에서 인덱스나 카운터를 사용하지 않습니다. 구문: For(<DataType of array/List><Temp variable name> : <Array/List to be iterated>){ System.out.println(); //Any other operation can be done with this temp variable. } 카운
@Deprecated 주석은 Java 5 버전에서 도입되었습니다. @Deprecated 주석이 달린 프로그램 요소는 다음과 같은 이유로 사용되어서는 안 됨을 의미합니다. - 사용 시 오류가 발생할 수 있습니다. 향후 버전에서는 호환되지 않을 수 있습니다. 향후 버전에서 제거될 수 있습니다. 더 우수하고 효율적인 대안이 이를 대체했습니다. 컴파일러는 더 이상 사용되지 않는 요소가 사용될 때마다 경고를 생성합니다. Java 9에서는 @Deprecated 주석에 두 가지 새로운 기능이 향상되었습니다. 제거용 − 주석이 달린 요