> Java > java지도 시간 > 본문

자바는 어떤 언어인가요?

青灯夜游
풀어 주다: 2020-09-10 13:13:06
원래의
40221명이 탐색했습니다.

Java는 높은 수준의 객체 지향, 클래스 기반, 동시성, 보안 및 범용 컴퓨터 프로그래밍 언어로 널리 사용되는 강력한 기술입니다.

자바는 어떤 언어인가요?

자바는 어떤 언어인가요?

Java는 C++ 언어의 다양한 장점을 흡수할 뿐만 아니라 C++의 다중 상속 및 포인터와 같은 이해하기 어려운 개념을 버린 객체 지향 프로그래밍 언어입니다. 강력한 기능과 단순성 및 사용 편의성을 모두 갖추고 있습니다. 정적 객체지향 프로그래밍 언어의 대명사인 자바 언어는 객체지향 이론을 완벽하게 구현하고 프로그래머가 복잡한 프로그래밍을 우아한 사고방식으로 수행할 수 있도록 해준다.

Java는 잠재적인 유형 불일치 문제에 대해 확장된 컴파일 타임 검사를 허용하는 강력한 유형의 언어입니다. Java에서는 명시적인 메서드 선언이 필요하며 C 스타일의 암시적 선언은 지원하지 않습니다.

Java는 데스크톱 애플리케이션, 웹 애플리케이션, 분산 시스템, 임베디드 시스템 애플리케이션 등을 작성할 수 있습니다.

Java의 특징:

Java는 단순성, 객체 지향, 분산, 견고성, 보안, 플랫폼 독립성 및 이식성, 멀티스레딩, 역학 등의 특징을 아래에서 자세히 소개합니다.

1. 단순성

Java는 C++와 매우 유사하게 설계된 것처럼 보이지만 언어를 작고 친숙하게 만들기 위해 디자이너는 일반 프로그래머에게 매우 일반적인 C++ 언어에서 사용할 수 있는 많은 기능을 제거했습니다. 덜 자주 사용하십시오. 예를 들어, Java는 go to 문을 지원하지 않고 대신 break 및 continue 문과 예외 처리 기능을 제공합니다. 또한 Java는 C++의 연산자 오버로드 및 다중 상속 기능을 제거하고 기본 파일을 사용하지 않으므로 전처리기가 필요하지 않습니다. Java에는 구조가 없기 때문에 배열과 문자열은 객체이므로 포인터가 필요하지 않습니다. Java는 객체 참조 및 간접 참조를 자동으로 처리하고 쓸모 없는 단위의 자동 수집을 실현하므로 사용자는 스토리지 관리 문제에 대해 걱정할 필요가 없으며 연구 개발에 더 많은 시간과 에너지를 소비할 수 있습니다.

2. 객체 지향

Java 언어는 단순화를 위해 클래스 간 단일 상속만 지원하지만 인터페이스 간 다중 상속을 지원하고 클래스와 구현을 지원합니다. 인터페이스 간 메커니즘(키워드는 Implements) Java 언어는 동적 바인딩을 완벽하게 지원하는 반면 C++ 언어는 가상 함수에 대해서만 동적 바인딩을 사용합니다. 간단히 말해서 Java 언어는 순수한 객체 지향 프로그래밍 언어입니다.

3. 배포

Java는 네트워크에서 애플리케이션을 지원하도록 설계되었습니다. Java는 다양한 수준의 네트워크 연결을 지원할 뿐만 아니라 Socket 클래스를 사용하여 안정적인 스트림 네트워크 연결을 지원하므로 사용자는 분산 클라이언트 및 서버를 생성할 수 있습니다.

네트워크는 소프트웨어 애플리케이션을 위한 배포 수단이 됩니다. Java 프로그램은 한 번만 작성하고 어디서나 실행하면 됩니다.

4. 컴파일 및 해석성

Java 컴파일러는 일반적인 기계어 코드 대신 바이트 코드(byte-code)를 생성합니다. Java 바이트코드는 아키텍처 중립적인 개체 파일 형식을 제공하며 코드는 프로그램을 여러 플랫폼에 효율적으로 전달하도록 설계되었습니다. Java 프로그램은 Java 인터프리터 및 런타임 시스템을 구현하는 모든 시스템에서 실행될 수 있습니다.

통역된 환경에서는 프로그램 개발의 표준 "연결" 단계가 크게 사라집니다. Java에 연결 단계가 있는 경우 이는 새 클래스를 환경에 로드하는 프로세스일 뿐이며 증분적이고 가벼운 프로세스입니다. 따라서 Java는 신속한 프로토타이핑과 손쉬운 실험을 지원하므로 신속한 프로그램 개발이 가능합니다. 이는 시간이 많이 걸리는 기존의 "컴파일, 링크 및 테스트"와는 완전히 대조적인 우아한 개발 프로세스입니다.

5. 견고성

Java는 원래 가전제품 소프트웨어를 작성하는 언어로 사용되었으므로 신뢰성이 높고 강력한 소프트웨어를 작성하도록 설계되었습니다. Java는 특정 프로그래밍 오류를 제거하여 안정적인 소프트웨어를 쉽게 작성할 수 있도록 해줍니다.

Java의 강력한 타이핑 메커니즘, 예외 처리, 자동 가비지 수집 등은 Java 프로그램의 견고성을 보장하는 중요한 요소입니다. 포인터를 폐기하는 것은 Java의 현명한 선택입니다. Java의 보안 검사 메커니즘은 Java를 더욱 강력하게 만듭니다.

6. 보안

Java의 저장소 할당 모델은 악성 코드로부터 방어하는 주요 방법 중 하나입니다. Java에는 포인터가 없으므로 프로그래머는 뒤에서 메모리에 대한 포인터를 가짜로 만들 수 없습니다. 더 중요한 것은 Java 컴파일러가 저장 배열 결정을 처리하지 않으므로 프로그래머가 선언을 보고 클래스의 실제 저장 배열을 추측할 수 없다는 것입니다. 컴파일된 Java 코드의 저장소 참조에는 런타임 시 Java 인터프리터에 의해 결정되는 실제 저장소 주소가 있습니다.

Java 런타임은 바이트코드 확인 프로세스를 사용하여 네트워크에 로드된 코드가 Java 언어 제한 사항을 위반하지 않는지 확인합니다. 이 보안 메커니즘에는 인터넷에서 클래스를 로드하는 방법이 포함됩니다. 예를 들어, 로드된 클래스는 로컬 클래스가 아닌 별도의 네임스페이스에 배치되어 악성 애플릿이 표준 Java 클래스를 자체 버전으로 바꾸는 것을 방지합니다.

7. 휴대성

Java는 언어 선언을 구현 측면과 독립적으로 만듭니다. 예를 들어, Java는 각 기본 데이터 유형의 크기와 작업 동작을 명시적으로 명시합니다(이러한 데이터 유형은 Java 구문으로 설명됨).

Java 환경 자체는 새로운 하드웨어 플랫폼 및 운영 체제로 이식 가능합니다. Java 컴파일러도 Java로 작성되는 반면 Java 런타임 시스템은 ANSIC 언어로 작성됩니다.

8, 고성능

Java는 먼저 컴파일한 다음 해석하는 언어이므로 완전히 컴파일된 것만큼 빠르지는 않습니다. 언어. 그러나 성능이 중요한 상황이 있습니다. 이러한 상황을 지원하기 위해 Java 설계자는 런타임 시 Java 바이트코드를 특정 CPU(중앙 처리 장치)에 대한 기계 코드로 변환하는 "Just-In-Time" 컴파일러를 만들었습니다. 완전한 컴파일을 달성하는 것입니다.

Java 바이트코드 형식은 이러한 "적시" 컴파일러의 요구 사항을 염두에 두고 설계되었으므로 기계어 코드 생성 프로세스가 상당히 간단하고 꽤 좋은 코드를 생성합니다.

9. 멀티스레딩

Java 언어에서 스레드는 Thread 클래스에 의해 제어되어야 하는 특수 개체입니다. 해당 하위 클래스(Sun) 클래스를 생성합니다. 일반적으로 스레드를 생성하는 방법에는 두 가지가 있습니다:

1), Thread(Runnable) 유형의 생성자 하위 클래스를 사용하여 Runnable 인터페이스를 구현하는 개체를 스레드로 래핑합니다.

# 🎜🎜#2) Thread 클래스에서 하위 클래스를 파생시키고 run 메서드를 재정의합니다. 이 하위 클래스를 사용하여 생성된 객체는 스레드입니다. Thread 클래스가 Runnable 인터페이스를 구현했기 때문에 모든 스레드에는 run 메서드가 있고 run 메서드에는 스레드에서 실행할 코드가 포함되어 있다는 점은 주목할 가치가 있습니다. 스레드의 활동은 일련의 메소드에 의해 제어됩니다. Java 언어는 다중 스레드의 동시 실행을 지원하고 다중 스레드 간의 동기화 메커니즘을 제공합니다(키워드는 동기화됨).

10. Dynamics

Java 언어의 설계 목표 중 하나는 동적으로 변화하는 환경에 적응하는 것입니다. Java 프로그램에 필요한 클래스를 실행 환경에 동적으로 로드하거나 네트워크를 통해 필요한 클래스를 로드할 수 있습니다. 이는 또한 소프트웨어 업그레이드를 용이하게 합니다. 또한 Java의 클래스에는 런타임 표현이 있으며 런타임 유형 검사를 수행할 수 있습니다.

11. 플랫폼 독립성

Java 프로그램(접미사 java가 있는 파일)은 Java 플랫폼 섹션 코드에서 아키텍처 중립적인 단어로 컴파일됩니다. 형식(접미사 클래스가 있는 파일)은 이 Java 플랫폼을 구현하는 모든 시스템에서 실행될 수 있습니다. 이 접근 방식은 이기종 네트워크 환경 및 소프트웨어 배포에 적합합니다.

추천 관련 비디오 튜토리얼: "

JavaTutorial"

위 내용은 자바는 어떤 언어인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!