JDK 10 릴리스에는 Java 라이브러리에 70개 이상의 새로운 API 및 옵션이 추가되었습니다. 다음은 도입된 몇 가지 중요한 개선 사항입니다. Optional.orElseThrow() 메서드 새로운 메소드 orElseThrow() 현재 get()에 대한 선호되는 대안인 java.util.Optional 클래스에서 사용할 수 있습니다. 방법. 수정 불가능한 컬렉션 생성을 위한 API 새로운 메소드 copyOf() 기존 인스턴스에서 새 컬렉션 인스턴스를 생성할 수 있는 List, Set 및 Map 인터페이스에서 사용할 수 있습
JEP 286 - 지역 변수 유형 추론 지역 변수 유형 추론은 Java 10부터 사용할 수 있는 언어에 대한 가장 분명한 변경 사항 중 하나입니다. 변수의 유형을 지정하지 않고 var를 사용하여 변수를 정의할 수 있습니다. 컴파일러는 제공된 값을 사용하여 변수의 유형을 유추합니다. 이 형식 유추는 지역 변수로 제한됩니다. 지역 변수를 선언하는 기존 방식 String name = Welcome to tutorialspoint.com; 로컬 변수를 선언하는 새로운 방법. var name = Welcome to tutorialspoi
JEP 322 - 시간 기반 릴리스 버전 관리 Java 10부터 Oracle은 Java 릴리스에 대해 엄격한 시간 기반 릴리스 버전 관리 모델을 도입했습니다. 이제 Java는 6개월마다 주요 릴리스를 갖게 됩니다. Java 10은 2018년 3월에 출시되었으며 앞으로 모든 주요 버전은 다가오는 3월과 9월에 출시될 예정입니다. 릴리스는 세 가지 범주로 더 분류됩니다. 기능 출시 − 기능 릴리스에는 언어별 기능, JVM 기능, 새/향상된 API, API 제거/사용 중단이 포함되어 있습니다. 이러한 기능 릴리스의 시간은 고정되어
실시간 데모 옵션 온라인 사용 가능한 모든 예제를 온라인으로 컴파일하고 실행할 수 있도록 Java 프로그래밍 환경을 온라인으로 설정했습니다. 읽고 있는 내용에 대한 확신을 주고 다양한 옵션으로 프로그램을 확인할 수 있습니다. 예제를 자유롭게 수정하고 온라인에서 실행하십시오. 실시간 데모를 사용하여 다음 예를 시도해 보십시오. 아래 샘플 코드 상자의 오른쪽 상단 모서리에 있는 옵션 - public class MyFirstJavaProgram { public static void main(String []args) {
Java 10은 Java 릴리스 케이던스의 주요 릴리스이며 2018년 3월 10일에 릴리스되었습니다. Java 10을 통해 Oracle은 Java 릴리스 케이던스를 Oracle Java SE 제품에 대한 새 모델, 6개월 릴리스 케이던스 및 LTS 모델로 변경했습니다. LTS 모델은 Long Term Support 모델의 약자입니다. Java 10부터 Oracle은 각 버전에 하나 또는 두 개의 주요 기능이 포함된 새 버전의 Java를 6개월마다 릴리스합니다. Oracle은 릴리스 트레인 개념을 사용합니다. 각 릴리스 트레인은 6
Java 언어는 세 가지 유형의 주석을 지원합니다. - Sr.No. 댓글 및 설명 1 /* 텍스트 */ 컴파일러는 /*에서 */까지 모든 것을 무시합니다. 2 //텍스트 컴파일러는 //부터 줄 끝까지 모든 것을 무시합니다. 3 /** 문서 */ 이것은 문서 주석이며 일반적으로 문서 주석이라고 합니다. . JDK javadoc 도구는 문서 주석을 사용합니다. 자동으로 생성된 문서를 준비할 때. 이 장은 Javadoc에 대한 모든 설명입니다. Javadoc을 사용하여 Java 코드에 대한 유용한
애플릿 웹 브라우저에서 실행되는 Java 프로그램입니다. 애플릿은 전체 Java API를 마음대로 사용할 수 있기 때문에 완전한 기능을 갖춘 Java 애플리케이션이 될 수 있습니다. 다음을 포함하여 애플릿과 독립 실행형 Java 응용 프로그램 사이에는 몇 가지 중요한 차이점이 있습니다. - 애플릿은 java.applet.Applet 클래스를 확장한 Java 클래스입니다. main() 메소드는 애플릿에서 호출되지 않으며 애플릿 클래스는 main()을 정의하지 않습니다. 애플릿은 HTML 페이지에 포함되도록 설계되었습
Java는 다중 스레드 프로그래밍 언어입니다. 즉, Java를 사용하여 다중 스레드 프로그램을 개발할 수 있습니다. 다중 스레드 프로그램은 동시에 실행할 수 있는 두 개 이상의 부분을 포함하고 각 부분은 특히 컴퓨터에 여러 CPU가 있는 경우 사용 가능한 리소스를 최적으로 사용하여 다른 작업을 동시에 처리할 수 있습니다. 정의에 따르면 멀티태스킹은 여러 프로세스가 CPU와 같은 공통 처리 리소스를 공유하는 경우입니다. 멀티 스레딩은 멀티태스킹의 개념을 단일 응용 프로그램 내의 특정 작업을 개별 스레드로 세분화할 수 있는 응용 프로
Java 애플리케이션을 사용하여 이메일을 보내는 것은 간단하지만 시작하려면 JavaMail API가 있어야 합니다. 및 자바 활성화 프레임워크(JAF) 컴퓨터에 설치되어 있습니다. Java 표준 웹사이트에서 최신 버전의 JavaMail(버전 1.2)을 다운로드할 수 있습니다. Java 표준 웹사이트에서 최신 버전의 JAF(Version 1.1.1)를 다운로드할 수 있습니다. 이 파일을 다운로드하고 압축을 풉니다. 새로 생성된 최상위 디렉토리에서 두 응용 프로그램에 대한 여러 jar 파일을 찾을 수 있습니다. mail
네트워크 프로그래밍이라는 용어 여러 장치(컴퓨터)에서 실행되는 프로그램을 작성하는 것을 말하며, 장치가 모두 네트워크를 통해 서로 연결되어 있습니다. J2SE API의 java.net 패키지에는 하위 수준 통신 세부 정보를 제공하는 클래스 및 인터페이스 모음이 포함되어 있어 당면한 문제 해결에 중점을 둔 프로그램을 작성할 수 있습니다. java.net 패키지는 두 가지 공통 네트워크 프로토콜에 대한 지원을 제공합니다. - TCP − TCP는 전송 제어 프로토콜의 약자로 두 응용 프로그램 간의 안정적인 통신을 허용합니다. T
Java는 객체 직렬화라고 하는 메커니즘을 제공합니다. 여기서 객체는 객체의 데이터와 객체의 유형 및 객체에 저장된 데이터 유형에 대한 정보를 포함하는 바이트 시퀀스로 표현될 수 있습니다. 직렬화된 개체가 파일에 작성된 후에는 파일에서 읽고 역직렬화할 수 있습니다. 즉, 개체와 해당 데이터를 나타내는 유형 정보와 바이트를 사용하여 메모리에 개체를 다시 만들 수 있습니다. 가장 인상적인 것은 전체 프로세스가 JVM에 독립적이라는 점입니다. 즉, 한 플랫폼에서 개체를 직렬화하고 완전히 다른 플랫폼에서 역직렬화할 수 있습니다. Ob
Integer 배열, String 배열 또는 정렬을 지원하는 모든 유형의 배열에서 요소를 정렬할 수 있는 단일 정렬 방법을 작성할 수 있다면 좋을 것입니다. 자바 일반 메소드와 제네릭 클래스를 사용하면 프로그래머가 단일 메소드 선언으로 관련 메소드 세트를 지정하거나 단일 클래스 선언으로 관련 유형 세트를 각각 지정할 수 있습니다. 제네릭은 또한 프로그래머가 컴파일 시간에 잘못된 형식을 잡을 수 있도록 컴파일 시간 형식 안전성을 제공합니다. Java Generic 개념을 사용하여 객체 배열을 정렬하는 일반 메서드를 작성한 다음
Java 2 이전에 Java는 Dictionary, Vector, Stack과 같은 임시 클래스를 제공했습니다. 및 속성 개체 그룹을 저장하고 조작합니다. 이러한 수업은 매우 유용했지만 중심적이고 통합적인 주제가 부족했습니다. 따라서 Vector를 사용하는 방식과 Properties를 사용하는 방식이 다릅니다. 컬렉션 프레임워크는 다음과 같은 여러 목표를 충족하도록 설계되었습니다. - 프레임워크는 고성능이어야 했습니다. 기본 컬렉션(동적 배열, 연결 목록, 트리 및 해시 테이블)에 대한 구현은 매우 효율적이어야 했습니다.
Java 유틸리티 패키지에서 제공하는 데이터 구조는 매우 강력하며 다양한 기능을 수행합니다. 이러한 데이터 구조는 다음 인터페이스와 클래스로 구성됩니다. - 열거 비트셋 벡터 스택 사전 해시테이블 속성 이 모든 클래스는 이제 레거시이며 Java-2는 다음 장에서 설명하는 Collections Framework라는 새로운 프레임워크를 도입했습니다. - 열거 Enumeration 인터페이스는 그 자체가 데이터 구조는 아니지만 다른 데이터 구조의 컨텍스트 내에서 매우 중요합니다. Enumeration 인터페이스는 데이터 구조에서
패키지는 이름 충돌을 방지하고 액세스를 제어하며 클래스, 인터페이스, 열거 및 주석의 검색/찾기 및 사용을 보다 쉽게 하기 위해 Java에서 사용됩니다. 패키지 액세스 보호 및 네임스페이스 관리를 제공하는 관련 유형(클래스, 인터페이스, 열거 및 주석)의 그룹으로 정의할 수 있습니다. Java의 기존 패키지 중 일부는 - java.lang - 기본 클래스 묶음 java.io - 입력 클래스, 출력 기능이 이 패키지에 번들되어 있습니다. 프로그래머는 자신의 패키지를 정의하여 클래스/인터페이스 등의 그룹을 묶을
인터페이스는 Java에서 참조 유형입니다. 클래스와 비슷합니다. 추상 메서드 모음입니다. 클래스는 인터페이스를 구현하므로 인터페이스의 추상 메서드를 상속합니다. 추상 메서드와 함께 인터페이스에는 상수, 기본 메서드, 정적 메서드 및 중첩 형식도 포함될 수 있습니다. 메서드 본문은 기본 메서드와 정적 메서드에만 존재합니다. 인터페이스를 작성하는 것은 클래스를 작성하는 것과 유사합니다. 그러나 클래스는 개체의 속성과 동작을 설명합니다. 그리고 인터페이스에는 클래스가 구현하는 동작이 포함됩니다. 인터페이스를 구현하는 클래스가 추상
캡슐화 네 가지 기본 OOP 개념 중 하나입니다. 나머지 세 가지는 상속, 다형성, 추상화입니다. Java의 캡슐화는 데이터(변수)와 데이터(메소드)에 작용하는 코드를 단일 단위로 함께 래핑하는 메커니즘입니다. 캡슐화에서 클래스의 변수는 다른 클래스에서 숨겨지고 현재 클래스의 메서드를 통해서만 액세스할 수 있습니다. 따라서 데이터 은닉이라고도 합니다. . Java에서 캡슐화를 달성하려면 - 클래스의 변수를 private로 선언합니다. 변수 값을 수정하고 볼 수 있는 공용 setter 및 getter 메서드를 제공합니다
사전에 따라 추상화 이벤트보다는 아이디어를 다루는 품질입니다. 예를 들어, 이메일의 경우를 생각하면 이메일을 보내자마자 어떤 일이 일어나는지, 이메일 서버가 사용하는 프로토콜과 같은 복잡한 세부 사항은 사용자에게 숨겨져 있습니다. 따라서 이메일을 보내려면 내용을 입력하고 수신자의 주소를 언급한 다음 보내기를 클릭하기만 하면 됩니다. 마찬가지로 객체 지향 프로그래밍에서 추상화는 구현 세부 사항을 사용자에게 숨기는 프로세스이며 기능만 사용자에게 제공됩니다. 즉, 사용자는 개체가 수행하는 작업 대신 개체가 수행하는 작업에 대한 정보를
다형성은 다양한 형태를 취할 수 있는 개체의 능력입니다. OOP에서 다형성의 가장 일반적인 사용은 부모 클래스 참조가 자식 클래스 개체를 참조하는 데 사용될 때 발생합니다. 둘 이상의 IS-A 테스트를 통과할 수 있는 모든 Java 객체는 다형성으로 간주됩니다. 자바에서 모든 자바 객체는 다형성입니다. 어떤 객체도 자신의 유형과 객체 클래스에 대한 IS-A 테스트를 통과할 것이기 때문입니다. 개체에 액세스할 수 있는 유일한 방법은 참조 변수를 통해서라는 것을 아는 것이 중요합니다. 참조 변수는 한 가지 유형일 수 있습니다. 한
이전 장에서 우리는 슈퍼클래스와 서브클래스에 대해 이야기했습니다. 클래스가 상위 클래스에서 메서드를 상속하는 경우 final로 표시되지 않는 한 메서드를 재정의할 기회가 있습니다. 재정의의 이점은 하위 클래스 유형에 고유한 동작을 정의할 수 있다는 것입니다. 즉, 하위 클래스가 요구 사항에 따라 상위 클래스 메서드를 구현할 수 있음을 의미합니다. 개체 지향적인 용어로 재정의는 기존 메서드의 기능을 재정의하는 것을 의미합니다. 예시 예를 살펴보겠습니다. 라이브 데모 class Animal { public void move
java