Java
![]() | こ の ký sự はKiểm chứng khả năngなTham khảo văn hiến や xuất xứが toàn く kỳ されていないか, không thập phần です.(2019 năm 3 nguyệt) |
パラダイム | オブジェクト chỉ hướng,コンポーネントベース,リフレクティブ,ジェネリック,Quan số hình,Song hành プログラミング |
---|---|
Lên sân khấu thời kỳ |
1995 năm 5 nguyệt 23 ngày α bản 1995 năm thu β bản 1996 năm 1 nguyệt 23 ngày ver1.0 |
Thiết kế giả | Java Community Process |
Khai phát giả |
サン・マイクロシステムズ,オラクル![]() |
Mới nhất リリース | Java Standard Edition 22.0.2/2024 năm 7 nguyệt 16 ngày |
Hình phó け | Cường いTĩnh hình phó け |
Chủ な処 lý hệ | Javaプラットフォーム |
Ảnh hưởng を chịu けた ngôn ngữ | C++,Ada[1],Eiffel[2],Mesa[3],Modula-3[4],Objective-C[5] |
Ảnh hưởng を cùng えた ngôn ngữ | C#,D,Dart,Groovy,Scala,Kotlin,Ceylon |
プラットフォーム |
Solaris,Linux,Windows, macOS,AIX,System i |
ライセンス | GNU General Public License,Java Community Process |
ウェブサイト |
www |
拡 trương tử | java, class, jar |
Java( ジャバ, ジャヴァ ) は, phiếm dùngプログラミング ngôn ngữとソフトウェアプラットフォームの hai bên を chỉ している tổng xưng ブランドである[6].オラクルおよびそ の quan liền hội xã の đăng lục nhãn hiệu である. 1996 năm にサン・マイクロシステムズによって thị trường リリースされ, 2010 năm に cùng xã がオラクルに hút thâu xác nhập された sự によりJava の bản 権もそちらに di chuyển した.
プログラミング ngôn ngữ Javaは,C++に cùng loại の cấu văn,クラスベースのオブジェクト chỉ hướng,マルチスレッド,ガベージコレクション,コンポーネントベース,Phân tán コンピューティングといった đặc trưng を cầm ち, khiêm tốn tính coi trọng の プログラム thư thức による kiên cố tính と,仮 tưởng マシンThượng で の thật hành によるセキュリティ tính およびプラットフォーム phi sống nhờ vào nhau tínhが lý niệm とされている.Javaプラットフォームは, Javaプログラム の thật hành hoàn cảnh または, thật hành hoàn cảnh と khai phát hoàn cảnh の hai bên を thống hợp したソフトウェアであり,ビジネスサーバ,モバイル máy móc,Tổ み込みシステム,スマートカードといった dạng 々なハードウェア hoàn cảnh に đối ứng したソフトウェア hình thái で cung cấp されている. そ の trung tâm kỹ thuật であるJava仮 tưởng マシンは các プラットフォーム hoàn cảnh gian の vi いを hút thâu しながら, Javaプログラム の thích thiết な chung động tác を thật hiện する cơ năng を bị えている[7].こ の テクノロジは“write once, run anywhere”と quảng cáo rùm beng されていた[8].
2019 năm の khi điểm でGitHubによると[9],Javaは đặc にクライアント/サーバモデルのWebアプリケーションで sử dụng されている nhất も người khí の cao いプログラミング ngôn ngữ の 1つであり[9],Toàn thế giới でおよそ900 vạn người の khai phát giả がいるとレポートされている[10].Mới nhất バージョンは, 2023 năm 9 nguyệt にリリースされたJava 21と, 2021 năm 9 nguyệt にリリースされたJava 17 の trường kỳ サポート ( LTS ) bản である. オラクルは chưa giải quyết の セキュリティ vấn đề によるリスクを lảng tránh するために, cũ バージョン の アンインストールと tân バージョンへ の di chuyển を cường く đẩy thưởng している[11].
Java の đặc trưng
[Biên tập]Hiện tại の chính quy ベンダーであるオラクルの công thức アピールは, dưới の thông りである[12].Đặc に nghiệp vụ dùng システム の cấu trúc に nhất thích であるとしている.
Java reduces costs, shortens developer timeframes, drives innovation, and improves application services as the programming language of choice for enterprise architecture, finance, and HR. Java is used in many industries including manufacturing, automotive, insurance, and public sector.
Javaは, コストを cắt giảm し, khai phát giả の thời gian 枠を đoản súc し, イノベーションを xúc tiến し, エンタープライズアーキテクチャ, tài vụ, およびHRに nhất thích なプログラミング ngôn ngữ としてアプリケーションサービスを cải thiện します. Javaは, chế tạo ・ tự động xe ・ bảo 険・ công cộng bộ môn など の nhiều く の nghiệp giới で sử dụng されています.
オラクルによると, toàn thế giới の 3 trăm triệu の コンピュータデバイスでJava thật hành hoàn cảnh が động tác しており, toàn thế giới の 200 vạn の nhân viên がJava khai phát hoàn cảnh を sử dụng しており, toàn thế giới で2 5 tỷ cái のJava Cardが phát hành されている, と thống kê されている[12].
Java の cấu văn
[Biên tập]Javaプログラム cấu văn は,C++によく tựa たも の である.オブジェクト chỉ hướng ngôn ngữの một mặt が cường điệu されがちだが, C ngôn ngữ の ようなTay 続き hình ngôn ngữとしてもプログラミングできる. Javaはオブジェクト chỉ hướng パラダイムをそれほど cưỡng chế しない.
Javaは, đồng thời にマルチパラダイム ngôn ngữでもある. JDK 1.1でJavaBeans/JavaRMI/CORBAによるコンポーネントプログラミングと,リフレクションAPIによるメタプログラミングが bị えられた. J2SE 5.0でジェネリクス cấu văn /APIによるジェネリックプログラミングが thêm vào された. Java SE 7で song hànhAPIによるSong hành プログラミングが thêm vào された. Java SE 8ではラムダ thức/ quan số hình インターフェース/ストリームAPIなどによるQuan số hình プログラミングが thêm vào された. 2014 năm ( Java 8 ) lấy hàng の quan số hình とジェネリクスを đa dụng しているJavaプログラムは, それ trước kia の Javaプログラムから đại きく dạng 変わりしている.
オブジェクト chỉ hướng
[Biên tập]Javaは,クラスベースのオブジェクト chỉ hướngである[13].クラス,インターフェース,インスタンスといった khái niệm を trung tâm にしたも の である. クラス の メンバ yếu tố は, フィールド, メソッド, tĩnh フィールド, tĩnh メソッド, định số, bên trong クラス, コンストラクタ, ファイナライザである. インターフェースは trừu tượng メソッドと định số で cấu thành される thuần 粋 trừu tượng クラスである. クラスはインスタンス の ひな hình であり, インスタンスはクラスを thật thể hóa したも の である. Javaプログラムは, 1 cái trở lên の クラス định nghĩa văn から hình thành される. Java の クラスはカプセル hóa,継 thừa,Nhiều thái tínhをサポートしている.
カプセル hóaは, クラスメンバ の nhưng coi tính (private, package, protected, public) でサポートされている. Nhưng coi tính とはメンバ の アクセス cho phép phạm 囲を định めるも の であり,private
は cùng クラス nội hạn định,package
は cùng クラス nội と cùng パッケージ nội hạn định,protected
は cùng クラス nội と cùng パッケージ nội と đẻ ra クラス nội hạn định,public
は chế hạn なしを ý vị する. パッケージはプログラム toàn thể を tùy ý に phân cách したソースファイル の 1 cái trở lên の まとまりである. Java の デフォルト nhưng coi tính は, ファイル単 vị のpackage
な の で ẩn tế tính よりも lợi liền tính が coi trọng されている.
継 thừaは, スーパークラスが một つに hạn られる単 một 継 thừa をサポートしている. Nhiều trọng 継 thừa は không thể である. Đã tồn クラスに tùy ý メンバを thêm vào した tân quy クラスを tác thành できる. Java の toàn クラスはObject
クラスをルートクラスとしてデフォルト継 thừa する.Object
クラスにはロックCơ năng が bị えられており, これはSong hành プログラミングを tiền đề にした sĩ dạng である.
Nhiều thái tínhは,仮 tưởng quan số,Trừu tượng クラス,インターフェース,Độngダウンキャストでサポートされている. スーパークラス のvirtual
メソッドを, サブクラス の cùng tên メソッドでオーバーライドできる cơ năng を仮 tưởng quan số と ngôn う. スーパークラス変 số にサブクラスインスタンスを đại nhập してそ の 変 số からサブクラス の メソッドが hô ばれるようにする の は,サブタイピングになる. インターフェースは trừu tượng メソッドだけ の thuần 粋 trừu tượng クラスであり, tùy ý の số だけクラスに thật trang できる. Thật thịnh hành ダウンキャストはinstanceof
Tính toán tử の thật thịnh hành hình チェックが khả năng で, ダウンキャスト thất bại khi はNgoại lệPhát sinh する.
プラットフォーム phi sống nhờ vào nhau
[Biên tập]プラットフォームPhi sống nhờ vào nhau とは, Javaプログラムが riêng のハードウェアやオペレーティングシステムに sống nhờ vào nhau せずに, あらゆる hoàn cảnh で の chung động tác を bảo đảm する khái niệm である.”Write once, run anywhere”( một lần プログラムを thư いてしまえば, ど の コンピューターでも động くよ ) とされる. Java の プラットフォーム phi sống nhờ vào nhau tính は thứ の ようにして thật hiện されている.
- Javaコンパイラは, Javaソースコードを,JavaバイトコードというTrung gian biểu hiệnにコンパイルする. Javaバイトコードは,Java仮 tưởng マシンDùng の thật hành コードである. Javaバイトコードは thông thường,Javaクラスファイルにまとめられる.
- Java仮 tưởng マシンは, các プラットフォーム の sai biệt を hút thâu するクッション なソフトウェアである. Java仮 tưởng マシンは, dạng 々なコンピュータ hoàn cảnh đối ứng バージョンが cung cấp されており, các プラットフォームにJava thật hành hoàn cảnhの trung hạch としてインストールされる.
- Java仮 tưởng マシンは, tùy ý のJavaクラスファイルをJavaクラスローダーで đọc み込み, そ のJavaバイトコードを giải 釈 thật hành する. インタプリタ thức の giải 釈 đi hành と,Thật thịnh hành コンパイラで giải 釈 đi hành させるも の がある.
Java lúc đầu の インタプリタ thức で đi hành されるJavaプログラム の thật hành tốc độ は trì かったが,Thật thịnh hành コンパイラKỹ thuật と động lại コンパイル kỹ thuật (dynamic recompilation) の dẫn vào によって thật hành tốc độ vấn đề はほぼ giải quyết した. Thật thịnh hành コンパイラとは, nhất định の Javaバイトコードをまとめてネイティブコードにコンパイルして継続 に thật hành させる kỹ thuật である. Java仮 tưởng マシンはメモリ cảnh giới とバッファオーバーフローの チェックを hành いながらプログラムを đi hành させる. また, クラスロード khi の バイトコード kiểm chứng cơ năng によって, あからさまなコード bạo tẩu や trí mạng エラー の tần phát を trước đó ức chế している.
マルチスレッド
[Biên tập]Javaプログラムは, số nhiều trở lên のスレッドを đồng thời đi hành できる. これをマルチスレッドと ngôn う. Đa số の スレッドを tráp う đại quy mô システムにも đối ứng しており, lệ えばスレッドグループAPIは, スレッドたちを dịch cắt や tính chất でグループ hóa して một quát thao tác できる. これはクライアント・サーバシステムの thật trang hướng けである. また, đa số の đoạn 続トランザクションをさばくシステムにおいて phát sinh しがちなスレッド sinh thành / phá bỏ の lặp lại による phụ tải tăng đại を lảng tránh するため の, スレッドプールとタスクキューを hợp わせたスレッドモニタAPIも dụng ý されている.
Java の マルチスレッドSong hành tính toánは,クリティカルセクションĐồng kỳが tiêu chuẩn cơ bản にされている. Java の toàn インスタンスは,ロックCơ năng を bị えているObject
クラスをルート継 thừa している の で, クリティカルセクション の ロックオブジェクトにできる. Javaではsynchronized
で chỉ định された phạm 囲がクリティカルセクションになる. Java の tiêu chuẩn ロック thủ pháp は,ミューテックスのモニタである.synchronized
メソッドはそ の toàn thể が bài hắn セクションになり, そこではThisインスタンスがロックオブジェクトになる.synchronized
Tĩnh メソッドでは, システム nội の chuyên dùng インスタンスがロックオブジェクトになる. また,synchronized( chỉ tên 変 số )
Cấu văn でメソッド nội の tùy ý phạm 囲をクリティカルセクションにして, そこでは chỉ tên 変 số がロックオブジェクトになる.
ミューテックス の モニタ bên ngoài の, カウントセマフォやバリアや đọc み thư きロックなど の ロック thủ pháp は, song hành API の phương で dụng ý されている.
ガベージコレクション
[Biên tập]Javaプログラム の メモリ quản lý は,Java仮 tưởng マシンのガベージコレクションによって hành われる. ガベージコレクションとは, すでにどこからも tham chiếu されていないインスタンスを tự động に riêng して phá bỏ し, そ の chiếm hữu メモリ lĩnh vực を tự động に giải phóng する cơ năng である. Người の tay によるオブジェクト の sinh thành と phá bỏ を chính xác に đối ứng させるメモリ quản lý tác nghiệp は phiền tạp hóa する の が thường であり,メモリリークや bất chính リリースによるエラーを dẫn き khởi こしやすく, バグ の đất ấm と hóa す の が thường lệ であった. それらを tự động hoá したガベージコレクションは, Javaプログラマを phục tạp なメモリ quản lý tác nghiệp から giải phóng する.
ガベージコレクタ の プロセスは, システムスレッドに thừa って chưa tham chiếu の インスタンスを thăm し続ける. どこか の phía cuối だけが đồ thiết れている tham chiếu の xích の かたまりも chính xác に riêng して, tham chiếu の cô đảo に lệ えられたメモリ lĩnh vực を một khí に giải phóng する. Javaではガベージコレクション cơ năng に cũng 々ならぬ lực が nhập れられており, そ の kỹ thuật đổi mới は hiện tại も tiến hành trung である.Nhiều thế hệ đừng ガベージコレクタ,Ứng đáp thời gian đoản súc hóa のレイテンシCoi trọng ガーベジコレクタ, dừng thời gian đoản súc hóa のスループットCoi trọng ガーベジコレクタなどが dẫn vào されて càng に đặt lại を trọng ねており, vận dụng hoàn cảnh đừng の tuyển 択 sử dụng も khả năng にされている.
Phân tán コンピューティング
[Biên tập]Java のPhân tán コンピューティングプログラミングは,オブジェクト yêu cầu ブローカーに chuẩn 拠している. これはネットワーク thượng に tồn tại する dạng 々なプラットフォーム の gian で, lẫn nhau いに dị なる hoàn cảnh を ý thức せずにリクエストとレスポンスを đưa りあい tùy ý の タスクを toại hành するPhân tán システムの cấu trúc をサポートする. Các プラットフォーム thượng で giá động されるサーバアプリケーションとクライアントアプリケーションは, それぞれオブジェクトを nội bao しており, nghiệp giới chung quy cách のCORBAまたはJava một mình quy cách のRMIが cung cấp する vận dụng アーキテクチャと thông tín プロトコルを thông して, hắn の オブジェクトと lẫn nhau にコミュニケーションする. それらは phân tán オブジェクトと hô ばれている.
Nghiệp vụ dùng システムではすでにCORBAが phổ cập していた の で, cao パフォーマンスだがJavaプラットフォーム gian の hạn định になるRMIはそ の sau truy いであった. そ の ためRMIはCORBAと liền huề できるようにRMI over IIOPなど の dạng 々な kỹ thuật が thật trang されている. CORBA の thông tín プロトコルはIIOP,RMI の phương はJRMPである. Phân tán オブジェクトを thật trang するため の APIとクラスライブラリ の nhiều くはJakarta EEに thuộc している. Phân tán オブジェクト の trung でサーバ cơ năng に đặc hoá されたも の はEJB(Enterprise JavaBeans) と hô ばれている.
EJBは, クライアントと đồng kỳ thông tín を hành いトランザクションを quản lý するセッションビーン, データベースとリンクして vĩnh 続データを quản lý するエンティティビーン, dạng 々なイベントから の không giống kỳ thông tín を quản lý するメッセージドリブンビーン の ba loại に đại đừng される. これら の EJBは,EJBコンテナに nội bao されて vận dụng される. Phân tán オブジェクト cùng sĩ が thông tín するため の プロトコルは, IIOPかJRMPが sử われる.JNDIは, gửi thông điệp された phân biệt danh からネットワーク thượng の phân tán オブジェクトや các loại リソース の ロケーションを riêng して thông tín ないしアクセスできるようにする.
EJBコンテナは,WEBコンテナと liền huề して vận dụng される の が bình thường である. EJBコンテナはWEBコンテナを giống nhau なクライアント song khẩu として sử dụng することが nhiều い. WEBコンテナはサーブレットとJSP( Java Server Pages ) を nội bao しているWEB dùng サーバアプリケーションであり,HTTPプロトコルを thông して giống nhau なWEBブラウザと の đồng kỳ thông tín を hành う. WEB phương diện の phân tán オブジェクトは, WEBコンポーネントと hô ばれる. JSPはいわゆるWEBサイト の tỏ vẻ に đặc hoá したコンポーネントである. サーブレットはWEBサイトへ の リクエストを処 lý し, trường hợp によってはセッションビーンにトランザクションを ủy 譲するコンポーネントである.EJBコンテナではJBossやWebSphereなどが nổi danh である. EJBコンテナはWEBコンテナと thống hợp されて cung cấp されている sự が nhiều い.WEBコンテナではApache Tomcatが nổi danh である.
セキュリティ
[Biên tập]Phân tán ネットワークプログラミングを coi trọng しているJavaは,サンドボックスモデルに cơ づいたセキュリティ cơ cấu を bị えている. これは cách xa ダウンロードされた thêm vào プログラム (Javaバイトコード) による thật hành hoàn cảnh へ の dư kỳ せぬ thao tác やユーザー tài nguyên へ の hảo ましくないアクセスを phòng ngừa するため の も の である. Phân tán ( distributed ) chỉ hướng の Javaプログラムでは,Javaクラスファイルを cách xa ロードする cơ hội が nhiều い の で, サンドボックス thật hành は cần thiết になる. Java の サンドボックスは, đại để は dưới の tay thuận になる.
- クラスローダーは, バイトコードをダウンロードして lần lượt クラス hóa する.
- Thật hành hoàn cảnh nội の セキュリティポリシーファイルに従って, các loại パーミッションが các クラスに giao cho される. セキュリティポリシーは chủ に, クラス danh とそ の パーミッション の ペアで ghi lại されている.
- Thật hành hoàn cảnh に nguyên からあるクラスは, オールパーミッション giao cho がデフォルトである.
- スレッドがリソースアクセスなど の thao tác をする độ に, セキュリティマネージャが hiện hành の パーミッションを điều べて đối tượng ngoại なら ngoại lệ を phát sinh させる.
- そ の tế は, スレッド の các thông qua メソッド の クラス の パーミッションが toàn チェックされ, nguyên tắc に ít nhất パーミッション の phương に hợp わせる.
- Cách xa ロードされたappletクラスなど の パーミッション đều không の クラス の メソッドを một lần でも thông ったスレッドは, hoàn toàn なサンドボックス thật hành になりほとんど の リソースにアクセスできなくなる.
Thật tế には thượng nhớ に thêm えて, các クラスを dịch cắt やセキュリティレベルでまとめるドメイン cơ cấu, chứng thực と thừa nhận によるユーザーパーミッション cơ cấu, バイトコード đưa chịu tin khi の ký tên phó き chứng minh thư cơ cấu などが tổ み hợp わされて thật vận chuyển dùng される.
Java の lịch sử
[Biên tập]Ra đời の kinh vĩ
[Biên tập]Gia điện hướng けプロジェクト の lập ち thượng げ ( 1990 năm 12 nguyệt )
![](https://upload.wikimedia.org/wikipedia/commons/thumb/1/14/James_Gosling_2008.jpg/180px-James_Gosling_2008.jpg)
Java の lịch sử は, 1990 năm 12 nguyệt にサン・マイクロシステムズ( サン ) が, thứ nhiều thế hệ の gia điện chế phẩm が nội tàng するマイクロコントローラ hướng け の プログラミング ngôn ngữ を khai phát するため の mặt nước hạ プロジェクトをリサーチ đoạn giai を kiêm ねて thí nghiệm に lập ち thượng げた sự から thủy まる. サンはこ の giới hạn が sau này の quan trọng thị trường になると dư trắc していた. サン の エンジニアであるジェームズ・ゴスリンやパトリック・ノートンら の tham gia により, hiện thật vị を mang びたプロジェクト の tên は chính thức に “グリーンプロジェクト” と định められた. Bỉ らはカリフォルニア châuメンローパークThị サンドヒルロードに dụng ý された tương đối tiểu さなオフィスで khai phát を thủy めた.
Oak ngôn ngữ とGreen OS の ra đời ( 1991 năm )
グリーンチーム nội では lúc ấy の chủ lưu であったオブジェクト chỉ hướng を chọn dùng する sự で nhất trí していた. Bỉ らはそ の モデル ngôn ngữ であるC++に bạch vũ の thỉ を lập て, lúc trước はそ の nhổ trồng bản を kiểm thảo していたが, プロジェクト の đối tượng が gia điện chế phẩm のTổ み込みシステムであったために tự nhiên と lại hạ された. C++ の phục tạp な ngôn ngữ sĩ dạng はコンピュータ tài nguyên の lãng phí とプログラムエラー の phát sinh suất を cao めがちであり, kiên cố tính と an toàn tính が quan trọng nhất の gia điện chế phẩm の chế ngự trang bị には không hướng きであると phán đoán されたためだった. Thêm えてC++ではNhổ trồng tínhに đối ứng できない điểm も chỉ trích され,プラットフォーム phi sống nhờ vào nhauも quan trọng な đề tài thảo luận として nhắc tới された. Bỉ らはC++に đại わる ngôn ngữ の khai phát と đồng thời に, あらゆる máy móc に dễ dàng に nhổ trồng できるプラットフォーム の sự tất yếu も nhận thức するようになった. こうして tân ngôn ngữ プログラム の động tác hoàn cảnh になる “Green OS” の khai phát も thủy められた.
Một phương で,MesaNgôn ngữ とC ngôn ngữの trường sở を lý tưởng にしていたサン の エンジニア のビル・ジョイは, C++をモデルにした tân しいオブジェクト chỉ hướng ngôn ngữ の khai phát を đề án するワーキングペーパーにFurtherという đề danh を phó けて tự xã に thượng thân した. それを chịu けてまずジェームズ・ゴスリンがC++ の 拡 trương ngôn ngữ を đưa ra した. ゴスリンはこれを “C++ ++ --” と danh phó けたがすぐに lấy り hạ げ, sửa めて một から thiết kế しなおしたプログラミング ngôn ngữ を1991 năm thu に ra đời させた. オフィス の sườn に lập つオーク の mộc を thiếu めながら khai phát を tiến めていたゴスリンは, こ の tân しい ngôn ngữ に “Oak” という danh trước をつけた. これがJava の đời trước である.
Huề mang đoan mạt, テレビ máy móc thị trường へ の tham nhập と lui lại ( 1992 năm - 1994 năm 5 nguyệt )
![](https://upload.wikimedia.org/wikipedia/commons/thumb/4/45/Duke3D.png/180px-Duke3D.png)
1992 năm hạ にはGreen OSを thật tế の máy móc に tái せてOakプログラムを thật hành できるようになっていた. こ の khoảnh になるとより quảng phạm 囲な khả năng tính を bí めるようになったグリーンプロジェクト の đối tượng は lúc trước の gia điện máy móc から, lúc ấy の トレンドであったHuề mang tình báo đoan mạt(PDA)へとシフトされていた. 1992 năm 9 nguyệt 3 ngày に lúc ban đầu の デモンストレーションが khai thúc giục され “Star7” という danh の PDA máy móc がOakプログラム の sơ の お công bố mục sân khấu になった. こ の Star7 の ユーザーインターフェース thượng で sau の マスコットキャラ “Duke” が sơ lên sân khấu している.
1992 năm 11 nguyệt, サンはファーストパーソンという hội xã を thiết lập しグリーンチームをそちらに tương ứng させた. Thứ nhiều thế hệ の インタラクティブ máy móc に quan tâm を cầm つファーストパーソンは, ケーブルテレビ dùngセットトップボックスSự nghiệp へ の tham nhập を quyết めて,タイム・ワーナーと3DOにそれぞれOakテクノロジを nhắc nhở した. しかし, そ の dư りに độ cao な mềm mại さが lại って quyện ghét されてしまい khế ước thật hiện には đến らなかった. サン bổn xã はファーストパーソン の giải tán を quyết め, グリーンチームも bổn xã に lệ された.
ワールドワイドウェブ tham nhập ( 1994 năm 6 nguyệt 〜1994 năm 9 nguyệt )
1994 năm 6 nguyệt, サン kỹ thuật bộ trưởng ジョン・ゲージがジェームズ・ゴスリン,ビル・ジョイ,パトリック・ノートン,エリック・シュミットら tập めて, duyên べ3 ngày に độ るブレインストーミングが hành われた. ここで bỉ らはワールドワイドウェブをプロジェクト の bản mạng に theo える sự で nhất trí した. Cách tân なウェブブラウザである “NCSA Mosaic”の lên sân khấu に xúc phát された bỉ らは, インターネット の thế giới がケーブルテレビ の それを siêu えたインタラクティブな truyền thông に phát triển しつつある sự を nhận thức していた. パトリック・ノートンはOakテクノロジをベースにした “WebRunner” という tiểu さなウェブブラウザを khai phát した. Oakによる tiểu さなアクティブプログラムが chôn め込まれたウェブページにアクセスすると, WebRunner thượng でマウス thao tác に liền động するインタラクティブなアニメーションが tỏ vẻ された.
Java の thủy động ( 1994 năm 10 nguyệt ~1996 năm 1 nguyệt )
![](https://upload.wikimedia.org/wikipedia/commons/thumb/4/4f/Hotjava.jpg/180px-Hotjava.jpg)
1994 năm thu までにグリーンチームは, Oakを “Java” に, WebRunnerを “HotJava”に đổi tên した. Green OSは “Java Runtime Environment” に lạc とし込まれた. Đổi tên の lý do はOakがすでにビデオカードアダプタ chế tạo hội xã の đăng lục nhãn hiệu になっていたからだった. こ の mệnh danh は một bộ の チームメンバーがよく xuất nhập りしていた gần く の コーヒーショップで quyết định されたと ngôn われる. Java の ngọn nguồn は không rõ とされているが, ロゴが kỳ している thông りコーヒーに nhân んでいる の は minh らかである. ジャワ đảo はコーヒー đậu の danh sản mà であり, đậu ( Bean ) はJavaテクノロジ nội でコンポーネントを chỉ す dùng từ にされている.
1994 năm 10 nguyệt, JavaランタイムとHotJavaブラウザがサン の cán bộ xã viên たち の trước でデモンストレーションされた. 1995 năm 5 nguyệt にアルファ bản が xã nội công khai され, 5 nguyệt 23 ngày の Sunワールドカンファレンスで, JavaランタイムとHotJavaブラウザが xã ngoại sơ công bố された. ここではJavaアプレットの kỹ thuật がセールスポイントとしてアピールされた. Đồng thời にネットスケープが “Netscape Navigator”ブラウザへ の Javaアプレット cơ năng dẫn vào をアナウンスして nghiệp giới の chú mục を tập めた. 1995 năm thu にベータ bản が xã ông ngoại khai された. 1996 năm 1 nguyệt 9 ngày にサンは, chính thức にJavaソフトウェア bộ môn を lập ち thượng げた. Cốt cán テクノロジは thị trường リリース đoạn giai まで tiến 捗していたが, そ の hắn の テクノロジは chưa だ đồ thượng đoạn giai であり, プラットフォームと hô べる vực までは đạt しておらず, sơ hồi リリース の プロダクト danh は, Javaランタイム hoàn cảnh を nội bao したデヴェロップメントキットになった. 1 nguyệt 23 ngày に lúc ban đầu の công khai バージョンである “JDK 1.0” が thị trường リリースされた.
バージョン lí lịch
[Biên tập]バージョン | リリース ngày |
---|---|
JDK Beta | 1995 năm |
JDK1.0 | 1996 năm 1 nguyệt 23 ngày[14] |
JDK 1.1 | 1997 năm 2 nguyệt 19 ngày |
J2SE 1.2 | 1998 năm 12 nguyệt 8 ngày |
J2SE 1.3 | 2000 năm 5 nguyệt 8 ngày |
J2SE 1.4 | 2002 năm 2 nguyệt 6 ngày |
J2SE 5.0 | 2004 năm ngày 30 tháng 9 |
Java SE 6 | 2006 năm 12 nguyệt 11 ngày |
Java SE 7 | 2011 năm 7 nguyệt 28 ngày |
Java SE 8 | 2014 năm 3 nguyệt 18 ngày |
Java SE 9 | 2017 năm 9 nguyệt 21 ngày |
Java SE 10 | 2018 năm 3 nguyệt 20 ngày |
Java SE 11 | 2018 năm 9 nguyệt 25 ngày[15] |
Java SE 12 | 2019 năm 3 nguyệt 19 ngày |
Java SE 13 | 2019 năm 9 nguyệt 17 ngày |
Java SE 14 | 2020 năm 3 nguyệt 17 ngày |
Java SE 15 | 2020 năm 9 nguyệt 15 ngày[16] |
Java SE 16 | 2021 năm 3 nguyệt 16 ngày |
Java SE 17 | 2021 năm 9 nguyệt 14 ngày[17] |
Java SE 18 | 2022 năm 3 nguyệt 22 ngày[18] |
Java SE 19 | 2022 năm 9 nguyệt 20 ngày[19] |
Java SE 20 | 2023 năm 3 nguyệt 21 ngày[20] |
Java SE 21 | 2023 năm 9 nguyệt 19 ngày[21] |
Java SE 22 | 2024 năm 3 nguyệt 19 ngày[22] |
Javaプログラミング lệ
[Biên tập]Hello World
[Biên tập]// Hello.java
publicclassHello{
publicstaticvoidmain(String[]args){
System.out.println("Hello, world!");
}
}
- Javaプログラムでは toàn て の フィールドとメソッドが
class
Nội に ghi lại される. - Javaプログラムは tĩnh メソッド
public static void main (String[] args)
から bắt đầu される.args
はプログラム bắt đầu khi の コマンドライン・パラメータである. System.out
はSystemクラス の tĩnh フィールドoutを ý vị する. outはPrintStream hình の インスタンスである.out.println( "Văn tự liệt" )
はout の printlnメソッドを hô び ra す.
Javaプラットフォーム
[Biên tập]Javaプラットフォーム (Java Platform) は, Javaプログラムを khai phát または thật hành する vì の ソフトウェア đàn の tổng xưng である. Javaプラットフォームは đối tượng hoàn cảnh に hợp わせて, Java thật hành hoàn cảnh およびJava khai phát hoàn cảnh の cấu thành nội dung と, Javaテクノロジ の thêm vào nội dung を変えたエディションに biên tập されて công khai されている. Javaテクノロジは権 lợi nguyên ベンダーだけでなくサードパーティーSườn からも cung cấp されており, そ の chuẩn hoá はJavaコミュニティプロセス(JCP) が quản lý している. Java thật hành hoàn cảnh とJava khai phát hoàn cảnh はオープンソース hóa されている の で các xí nghiệp, các đoàn thể, khai phát giả từng người が営 lợi または phi 営 lợi で dạng 々なソフトウェアと quan liền kỹ thuật を công khai しており, thật lớn なITエコシステムを cấu trúc している.
エディション
[Biên tập]2019 năm hiện tại, Java権 lợi nguyên の オラクルは, đối tượng hoàn cảnh に hợp わせたJavaプラットフォーム の 4つ の エディションを công khai している. エディションによってJava thật hành hoàn cảnh とJava khai phát キットに hàm まれるツール cấu thành に vi いがあり, またクラスライブラリとAPI の cấu thành nội dung も dị なっている. Java仮 tưởng マシン の tính năng にも sai biệt がある. JDK 1.1までは単 thể エディションで, J2SE 1.2から3エディションに phân かれた. J2SE 5.0 khoảnh から拡 trương テクノロジ の một つであったJava Cardが thăng cách して4エディションとなった.
- Java Platform, Standard Edition(Java SE)
- スマートフォンやタブレット đoan mạtを hàm むパーソナルコンピュータ hướng けである. Chủ にデスクトップアプリケーションとWEBアプリを khai phát または thật hành する. Giống nhau ユーザー dùng sĩ dạng と ngôn える.
- Java Platform, Enterprise Edition(Java EE) /Jakarta EE
- サーバマシン, ワークステーション hướng けである. スタンダード bản に thêm え, WEBサーバ cập び nhiều tầng クライアントサーバ, nghiệp vụ dùng システムを khai phát する vì の, dạng 々な拡 trương kỹ thuật クラスライブラリ&APIが thêm vào されている. Nghiệp vụ dùng プロフェッショナル sĩ dạng であり đại quy mô である.
- 2017 năm 9 nguyệt にオラクルは sau này の Java EE の バージョンアップがエクリプス tài đoànによって hành われる sự を phát biểu した[23][24].Java EE の nhãn hiệu は hiện hành bản の サポートを続けるオラクルが bảo trì した の で, エクリプス tài đoàn による sau này の バージョンはJakarta EEの tên で công khai される sự になった[25].
- Java Platform, Micro Edition(Java ME)
- Tổ み込みシステム,マイクロコントローラHướng けである. コンピュータ tài nguyên が chế hạn されている tập tích đường về や điện tử máy móc に đối ứng した riêng kỹ thuật sĩ dạng であり, chuyên dùng の クラスライブラリ&APIも dụng ý されている. Java仮 tưởng マシンも tương đối コンパクトにまとめられている.
- Java Card
- スマートカード( ICカード ), loại nhỏ メモリデバイス thượng で vận dụng されるプログラムを khai phát するため の エディションである.Hiện tại[いつ?]ではSIMカードやATMカードなど phúc quảng い giới hạn に phổ cập している. Java仮 tưởng マシン の cơ năng は phi thường にコンパクトにまとめられており, mấy つか の プリミティブ hình も tỉnh lược されている. Cố に đặc thù なプログラミングスタイルが cầu められる.
Java thật hành hoàn cảnh (JRE)
[Biên tập]Java thật hành hoàn cảnh (Java Runtime Environment;JRE) は, Javaアプリケーションを thật hành するために tất yếu なソフトウェアである.Java仮 tưởng マシン,''Java.exe'' の スターターを hàm めた các loại thật hành サポートツール, Javaクラスライブラリで cấu thành される. Java thật hành hoàn cảnh の trung hạch はJava仮 tưởng マシンである. エディション mỗi に仮 tưởng マシン の sĩ dạng と tính năng は dị なっており, また thật thịnh hành は số nhiều の động tác モードを cầm つ. 仮 tưởng マシンはスターターを thông して giá động される の が bình thường である. Dạng 々な sử dụng trạng huống に đối ứng したスターターが lúc ban đầu に thật hành されて, そこから仮 tưởng マシンが hô び ra されてJavaプログラム の thật hành を di 譲される. 仮 tưởng マシンはJavaクラスライブラリを trục thứ đọc み込みながらJavaプログラムを thật hành する. Java thật hành hoàn cảnh の ツール nội dung とクラスライブラリ cấu thành は, エディション mỗi に vi いがある.
- Javaクラスライブラリ
Javaクラスライブラリは, phổ biến に hô び ra される riêng の cơ năng を thật trang したクラス の tập hợp thể である. Javaプログラムはライブラリ nội の クラスを trục thứ hô び ra しながら処 lý を thật hành する. なお, それぞれ の Javaクラスライブラリ bên trong からプログラマ の lợi dụng に hướng けて phần ngoài công khai されている bộ phận を “Java API” と hô ぶ.
- Cơ sở ライブラリ - Java ngôn ngữ の cơ sở を tráp う.
- Nhập xuất lực ライブラリ - ファイル nhập xuất lực など.
- コレクションライブラリ - động xứng liệt と động liền tưởng xứng liệt. データ tập hợp の thao tác.
- Toán học ライブラリ - các loại tính toán を tráp う.
- Quốc tế hóa địa vực hóa ライブラリ - lịch, ngày phó, thời gian, tiền tệ, văn tự コードなど のQuốc tế hóa と địa vực hóaを tráp う.
- ネットワークライブラリ - ソケット thông tín を tráp う.
- GUIライブラリ - グラフィカル・ユーザーインターフェースを tráp う.
- アプレットライブラリ - アプレット sinh thành dùng.
- Javaビーンズライブラリ - ソフトウェアコンポーネント tác thành dùng.
- データベース tiếp 続ライブラリ - SQLを tráp う.
- リモートメソッドライブラリ - phân tán オブジェクトを tráp う.
- セキュリティライブラリ - セキュリティポリシー, ユーザー chứng thực と権 hạn thừa nhận, công khai kiện ám hiệu phương thức など.
- Javaアプリケーション の hình thái
Java thật hành hoàn cảnh に dụng ý されている riêng の Javaクラスライブラリを lợi dụng する sự でJavaプログラムは kết quả に, dưới の bốn chủng loại の アプリケーション hình thái に đẻ ra する.
- Javaアプリケーション(application)
- パーソナルコンピュータなど の ローカル hoàn cảnh で thật hành されるJavaプログラム. “Java Web Start”は tùy ý の jnlpファイル (java network launching protocol) をダウンロードして thật hành できるJavaアプリ の xứng bố システムである. こ の cùng loại kỹ thuật としてマイクロソフト の ノータッチデプロイメント, ClickOnceがある.
- Javaアプレット(applet)
- サーバからダウンロードされてWEBブラウザ thượng で thật hành されるJavaプログラム.サンドボックスCơ năng hạ で nghiêm しい động tác chế ước が thêm えられている.Lúc trước はJava の mục ngọc kỹ thuật であったが, dạng 々な lý do からさほど phổ cập しなかった[Một mình nghiên cứu?].
- Java Cardプラットフォーム の giới hạn であるスマートカード( ICカード ) thượng で động くJavaプログラムもアプレットと hô ばれており, hiện tại ではこちらに sân khấu を di している.
- Javaサーブレット(servlet)
- サーバマシンで thật hành されるJavaプログラム. そ の danh の thông り tay khinh にサーバプログラムを thật giả bộ tới るが, đại quy mô サーバ の cấu trúc にも thích している. サーブレットはクライアントから の リクエストを trục thứ トランザクションして lần lượt レスポンスする. WEBクライアントにはHTMLなど の プロトコルページ cập び các loại メディアをレスポンスしてWEBブラウザ thượng で tỏ vẻ させる.PerlなどによるCGIに so べ, サーバ sườn の phụ tải が thấp いなど の メリットがある.
- Javaサーバページ(server page)
- サーブレットをWEBサーバ dùng に đặc hoá したも の であり,XHTML(HTML) nội に ghi lại するJavaプログラムである. WEBクライアントから の リクエストに bạn うパラメータに従い, それをサーバ sườn で giải 釈してWEBページ nội dung を động に sinh thành, 変 hóa させてレスポンスする. コードは tựa ているが,JavaScriptの dạng にブラウザ sườn で thật hành するスクリプトではない. Cùng loại の kỹ thuật にActive Server Pages,PHPがある.
Java khai phát キット (JDK)
[Biên tập]Java khai phát キット (Java Development Kit) は, Javaプログラムを khai phát するために tất yếu なソフトウェアである. Java thật hành hoàn cảnh も nội bao している.Javaコンパイラなど の cơ bản khai phát ツール, các loại khai phát サポートツール, Java APIで cấu thành されている. Trước thuật の エディションによって khai phát ツール nội dung とAPI cấu thành に vi いがある. Java khai phát キット の hô xưng はこれまでに gì độ か変 càng されている.
- J2SE 1.2.2_004 までは, JDK (Java Development Kit) と hô んでいた.
- J2SE 1.4 までは, Java2 SDK (Java2 Software Development Kit) と hô んでいた.
- J2SE 5.0 からは lại び, JDK (Java Development Kit) と hô んだ.
- JavaSE 7 からは, エンタープライズ bản とマイクロ bản では Java SDK (Java Software Development Kit) と hô び, スタンダード bản とカード bản では JDK (Java Development Kit)と hô ぶようになった. JDKはSDK の 拡 trương サブセット ( SDK の một bộ phận +そ の hắn ) とされる.
- Java API
APIは, アプリケーション・プログラミング・インタフェース の đầu tự ngữ であり, Javaクラスライブラリ bên trong からプログラマに hướng けて phần ngoài công khai されているクラス, インタフェース, メソッド, フィールド, định số の tập hợp である. プログラマはこれを dùng いて các loại ソフトウェア の khai phát を hành う. APIは cơ bản にクラスライブラリ の tương ứng に duyên って, パッケージ (package) と hô ばれる danh trước không gian で phân loại されて cung cấp されている. パッケージは các ワードをピリオドで liên kết して giai tầng hóa されている. Lúc đầu ワード の javaは khai phát nguyên cung cấp の thuần khiết cơ sở bản を ý vị する. Hắn に thuần khiết 拡 trương bản の javax, tùy ý đoàn thể cung cấp の org, xí nghiệp cung cấp の comがある.
- java.lang - Java ngôn ngữ の cơ sở を tráp う.
- java.io - ファイル nhập xuất lực など.
- java.util - động xứng liệt と động liền tưởng xứng liệt. データ tập hợp の thao tác.
- java.math - các loại tính toán を tráp う.
- java.text - lịch, ngày phó, thời gian, tiền tệ, văn tự コードなど の quốc tế hóa と địa vực hóa を tráp う.
- java.net - ソケット thông tín を tráp う.
- java.awt - グラフィカル・ユーザーインターフェイスを tráp う.
- java.applet - アプレット sinh thành dùng.
- java.beans - ソフトウェアコンポーネント tác thành dùng.
- java.sql - SQLを tráp う.
- java.rmi - phân tán オブジェクトを tráp う.
- java.security - セキュリティポリシー, ユーザー chứng thực と権 hạn thừa nhận, công khai kiện ám hiệu phương thức など.
- Thống hợp khai phát hoàn cảnh と khai phát chi viện ツール
Thống hợp khai phát hoàn cảnh (IDE)は, JDKを trung hạch にしてビジュアルエディターやビルドマネジャーなど の dạng 々な khai phát chi viện cơ năng を bị えたソフトウェアである. JDK の みだと, メモ trướng でプログラムを thư きコマンドラインでコンパイルしコンソールでデバッグをするという cực めて nguyên thủy な tác nghiệp になるが, IDEを sử dụng する sự で nhiều cơ năng エディタコーディングとビルド quá trình の tự động hoá と coi 覚 なデバッグが khả năng になる. Java khai phát dùng の IDEは dạng 々な xí nghiệp と tùy ý đoàn thể から công khai されている.
- NetBeans- (サン・マイクロシステムズ→オラクル) オープンソースIDE.NetBeans.orgNetBeans.jp.
- Eclipse SDK- (IBM→Eclipse tài đoàn) オープンソースIDE. Java dùng IDE の chung cơ kiểm kê tài sản ở である. ここからWebSphere Studio, JBuilderなど dạng 々なIDEが đẻ ra している.eclipse.orgEclipseWiki.
- WebSphere Studio- (IBM) thương dùng IDE. Eclipseに có liêu プラグイン cơ năng を tổ み hợp わせたも の[26].Hiện tại はアップデート đình chỉ.WebSphere.
- IBM Rational- (IBM)Rationalブランド thương dùng IDE. WebSphere Studio の sau 継 chế phẩm.
- JBuilder- (ボーランド→エンバカデロ・テクノロジーズ) thương dùng IDE. JBuilder2007からEclipseベースになっている.JBuilder.
- Oracle JDeveloper- ( オラクル ) Oracle Application Serverと thống hợp されている. 2005 năm 6 nguyệt 28 ngày に vô liêu hóa した.JDeveloper.
- Oracle Workshop for WebLogic- (BEAシステムズ→オラクル )WebLogicと thống hợp されている.Oracle Workshop.
- BlueJ- (サン・マイクロシステムズ,Hàoディーキン đại học,Anhケント đại họcの cộng đồng khai phát ) フリーIDE.BlueJ.
- IntelliJ IDEA- (JetBrains) thương dùng IDE.Android Studioの ベースになった.IntelliJ IDEA.
- JCreator- (Xinox Software) thương dùng IDE.JCreator.
- Xcode- (Apple)macOSに phó thuộc するIDE.
Khai phát サポートツールは, プロジェクト quản lý, tự động ビルド, デバッグ, モニタリングを dễ dàng にする. Hạ nhớ の hắn にも nhiều く の chi viện ツールが tồn tại する.
- Apache Ant- Javaアプリケーション の ビルドツール.Apacheソフトウェア tài đoànの プロジェクトによって khai phát された. コンパイル,バージョン quản lý システムと の liền huề, jar, javadoc sinh thành, ファイル の コピー/ di động / trừ bỏ /変 đổi など の liên tiếp の 処 lý を tự động hoá して hiệu suất に thật hành する.makeと cùng loại の ツールであり,XMLファイルにビルド の quy tắc を ghi lại する. Java bên ngoài の ngôn ngữ によるアプリケーション khai phát や, アプリケーション khai phát bên ngoài の sử dụng にも sử うことができる.
- Apache Maven- Javaアプリケーション の プロジェクト quản lý ツール. Apacheソフトウェア tài đoàn の プロジェクトによって khai phát された.
- Gradle-Apache AntやApache Mavenの コンセプトに cơ づくオープンソースビルド tự động hoá システム.
- JUnit- Javaアプリケーション の 単 thể テストフレームワーク. 単 thể テストを tự động hoá する.xUnitの một loại である.テスト駆 động khai phátを chi viện する.
Javaテクノロジ の số 々
[Biên tập]Javaテクノロジは, cá nhân を hàm む các loại tổ chức から dạng 々な hình thái で công khai されている. Khai phát nguyên から nhắc nhở された kỹ thuật は,Java Community Process(JCP) による thẩm tra を đủ tư cách した sau にJavaテクノロジ の một つとして chứng thực される. これを chuẩn hoá (standardization) と ngôn う. Javaテクノロジが chuẩn 拠すべき quy phạm sĩ dạng は, JCP quản lý hạ で phát hành される số 々 のJava sĩ dạng yêu cầu(Java Specification Request) にて định nghĩa されている. Javaテクノロジは dạng 々な giới hạn に dẫn vào されている. そ の đồng loạt を dưới に liệt cử する.
- JNI(Java Native Interface)
- Hắn の ngôn ngữ で thật trang されたネイティブコードを hô び ra す kỹ thuật
- JMI (Java Metadata Interface)
- Java の メタデータ の tác thành ・アクセス・ kiểm tác ・ đưa chịu tin に quan する sĩ dạng
- JML (Java Modeling Language)
- Khế ước による thiết kế(DbC) を chỉ hướng した hình thức ngôn ngữ をソースコードに dẫn vào する
- JMX(Java Management Extensions)
- Chủ に phân tán システムでSống nhờ vào nhau tính の rót vàoによるJavaプログラム の động な lại cấu thành kỹ thuật
- JDMK (Java Dynamic Management Kit)
- JMX sĩ dạng に cơ づいた khai phát chi viện ソフトウェア
- JDO(Java Data Objects)
- オブジェクトVĩnh 続 hóaの sĩ dạng
- Jini
- Phân tán システムを cấu trúc するネットワークアーキテクチャ
- JavaSpaces
- Jini の phân tán システム hoàn cảnh でオブジェクト の đưa chịu tin と vĩnh 続 hóa などをサポートするテクノロジ
- JAIN (Java API for Integrated Networks)
- Thống hợp thông tín ネットワーク dùng の API
- JSF(Java Server Faces)
- WEBクライアントにユーザーインターフェースを cung cấp するサーバ dùng テクノロジ
- JXTA
- P2Pの 仮 tưởng ネットワーク の ため の オープンプロトコル
- OSGi
- サービス の động な quản lý と cách xa bảo thủ
- Java3D
- 3 thứ nguyên グラフィクスプログラミング の ため の cao tiêu chuẩn なAPI.Java 3D
- JOGL (Java OpenGL)
- OpenGLを sử う3Dプログラミング の ため の thấp tiêu chuẩn なAPI
- JAI (Java Advanced Imaging)
- Cao tiêu chuẩn な bức họa thao tác API
- LWJGL
- ゲーム khai phát dùng の API.OpenGL,OpenAL,OpenCLを tráp える. Dạng 々なゲーム dùng コントローラーも tráp える.
- JSML (Java Speech Markup Language)
- Âm thanh hợp thànhシステムにテキスト chú 釈を thêm vào する
- Blu-ray Disc Java
- ブルーレイディスク (BD) で thật hành される các loại コンテンツ chế tác dùng
Javaオープンソースモデル
[Biên tập]サン・マイクロシステムズは1996 năm の リリース lúc trước からJava thật hành hoàn cảnh とJava khai phát hoàn cảnh をオープンソース hóa しており, サードパーティーにJavaテクノロジ khai phát へ の tham nhập をアピールしていた. ただしJava の phổ cập に nhất định の コントロールをかける vì にソースコード の sửa 変までは nhận めていなかった. 2004 năm になるとIBMが nghiệp giới の ưu vị tính を sống かしてJavaオープンソースプロジェクト の chủ đạo 権を nắm るようになった.Javaコミュニティプロセスを lấy り quyển く nghiệp giới の 変 hóa を ngộ ったサン・マイクロシステムズはIBMと の bổn cách な dìu dắt を thừa nhận し, 2007 năm にJava SE 6を “OpenJDK”としてGNU giống nhau công khai ライセンスの hạ でリリースした[27].OpenJDKではソースコード の sửa 変も nhận められた.GNUプロジェクトは “GNU Interpreter for Java”,GNUコンパイラコレクションの “GNU Compiler for Java”,Trao đổi クラスライブラリ の “GNU Classpath”を công khai した. Windows dùng GNU Compilerは,MinGWと cũng せてCygwinの hoàn cảnh thượng でも thật hành できた.
WindowsやLinuxなど の メジャーOSでは, オラクル, IBM, Blackdown, GNUプロジェクト, Kaffe.orgなどによるJavaプラットフォームが công khai されている. また, Javaソースコードをそ の ままWin dùng thật hành ファイルに変 đổi する “Excelsior JET” や[28],JarファイルをWin dùng thật hành ファイルに変 đổi する “exewrap”“Launch4j”“NSIS”“JSmooth”なども buôn bán ないし công khai されている.
Java nhận định tư cách
[Biên tập]![](https://upload.wikimedia.org/wikipedia/commons/thumb/3/33/Java_Certification_Path.gif/220px-Java_Certification_Path.gif)
オラクル[Chú 釈 1]は số nhiều の Java nhận định tư cách を chủ thúc giục している. Java の バージョンアップに bạn って tư cách も変 càng されることがある. ただし, 変 càng trước に lấy được した tư cách は変 càng sau も có hiệu である. Nhận định thí nghiệm に không đủ tiêu chuẩn だった trường hợp, そ の thí nghiệm ngày を hàm めて14 ngày trong vòng は cùng thí nghiệm を chịu nghiệm することができない.
Tư cách danh | レベル | Đối tượng バージョン |
---|---|---|
Java Foundations Certified Junior Associate | Junior Associate | Không rõ |
Oracle Certified Java Programmer, Bronze SE 7/8[Chú 釈 2] | Bronze | Java SE 7/8 |
Oracle Certified Java Programmer, Silver SE 8[Chú 釈 3] | Associate | Java SE 8 |
Oracle Certified Java Programmer, Gold SE 8[Chú 釈 4] | Professional | Java SE 8 |
Oracle Certified Professional, Java EE 7 Application Developer | Professional | Java EE 7 |
Oracle Certified Master, Java EE 6 Enterprise Architect | Master | Java EE 6 |
Oracle Certified Expert, Java EE 6 Enterprise JavaBeans Developer | Expert | Java EE 6 |
Oracle Certified Expert, Java EE 6 JavaServer Faces Developer | Expert | Java EE 6 |
Oracle Certified Expert, Java EE 6 Web Services Developer | Expert | Java EE 6 |
Oracle Certified Expert, Java EE 6 Java Persistence API Developer | Expert | Java EE 6 |
Oracle Certified Expert, Java EE 6 Web Component Developer | Expert | Java EE 6 |
Chú 釈
[Biên tập]Xuất xứ
[Biên tập]- ^Chaudhary, Harry H. ( 2014 năm 7 nguyệt 28 ngày ). “Cracking The Java Programming Interview:: 2000+ Java Interview Que/Ans”.2016 năm 5 nguyệt 29 ngàyDuyệt lãm.
- ^“The Java Language Environment”(May 1996). May 6, 2014 khi điểm の オリジナルよりアーカイブ.May 6, 2014Duyệt lãm.
- ^“The Java Language Specification, 2nd Edition”.August 5, 2011 khi điểm の オリジナルよりアーカイブ.February 8, 2008Duyệt lãm.
- ^“The A-Z of Programming Languages: Modula-3”.Computerworld.au. January 5, 2009 khi điểm のオリジナルよりアーカイブ.2010 năm 6 nguyệt 9 ngàyDuyệt lãm.
- ^Patrick NaughtoncitesObjective-Cas a strong influence on the design of the Java programming language, stating that notable direct derivatives include Java interfaces (derived from Objective-C'sprotocol) and primitive wrapper classes.[1]Java Was Strongly Influenced by Objective-C-ウェイバックマシン( 2011 năm 7 nguyệt 13 ngày アーカイブ phân )
- ^“What is Java and why do I need it?”( tiếng Anh ).2019 năm 1 nguyệtDuyệt lãm.
- ^“1.2 Design Goals of the Java™ Programming Language”.オラクル (January 1, 1999). January 23, 2013 khi điểm のオリジナルよりアーカイブ.2013 năm 1 nguyệt 14 ngàyDuyệt lãm.
- ^“Write once, run anywhere?”.Computer Weekly(May 2, 2002).2009 năm 7 nguyệt 27 ngàyDuyệt lãm.
- ^abChan (January 22, 2019). “The 10 most popular programming languages, according to the 'Facebook for programmers'”.Business Insider.June 29, 2019 khi điểm のオリジナルよりアーカイブ.June 29, 2019Duyệt lãm.
- ^“JavaOne 2013 Review: Java Takes on the Internet of Things”.oracle.April 19, 2016 khi điểm のオリジナルよりアーカイブ.2016 năm 6 nguyệt 19 ngàyDuyệt lãm.
- ^“Why should I uninstall older versions of Java from my system?”.オラクル.2016 năm 9 nguyệt 9 ngàyDuyệt lãm.
- ^ab“Java Software | オラクル”.oracle.2019 năm 10 nguyệt 19 ngàyDuyệt lãm.
- ^Quảng từ uyển thứ sáu bản
- ^“JAVASOFT SHIPS JAVA 1.0”.sun.March 10, 2007 khi điểm のオリジナルよりアーカイブ.2008 năm 2 nguyệt 5 ngàyDuyệt lãm.
- ^Chander, Sharat. “Introducing Java SE 11”.oracle.September 26, 2018 khi điểm の オリジナルよりアーカイブ.September 26, 2018Duyệt lãm.
- ^“The Arrival of Java 15!”.Oracle(September 15, 2020).2020 năm 9 nguyệt 15 ngàyDuyệt lãm.
- ^“オラクル, Java 17をリリース”.Oracle(September 17, 2021).2021 năm ngày 30 tháng 9Duyệt lãm.
- ^“オラクル, Java 18を phát biểu”.Oracle(March 22, 2022).2022 năm 3 nguyệt 23 ngàyDuyệt lãm.
- ^“オラクル, Java 19をリリース”.Oracle(2022 năm 9 nguyệt 21 ngày ).2022 năm 9 nguyệt 21 ngàyDuyệt lãm.
- ^“オラクル, Java 20をリリース”.Oracle(2023 năm 3 nguyệt 22 ngày ).2022 năm 3 nguyệt 23 ngàyDuyệt lãm.
- ^“オラクル, Java 21 の リリースとサポート・ロードマップ の kéo dài を phát biểu”.Oracle(2023 năm 9 nguyệt 19 ngày ).2023 năm 9 nguyệt 21 ngàyDuyệt lãm.
- ^“オラクル, Java 22をリリース”.Oracle(2024 năm 3 nguyệt 21 ngày ).2024 năm 3 nguyệt 23 ngàyDuyệt lãm.
- ^“Opening Up Java EE - An Update”( tiếng Anh ). オラクル (2017 năm 9 nguyệt 12 ngày ).2019 năm 3 nguyệt 10 ngàyDuyệt lãm.
- ^“EE4J, EclipseファウンデーションがオープンソースJava EEを chuẩn bị”.InfoQ (2017 năm 11 nguyệt 16 ngày ).2019 năm 3 nguyệt 10 ngàyDuyệt lãm.
- ^“Java EE は Jakarta EE となる”.InfoQ (2018 năm 3 nguyệt 5 ngày ).2019 năm 3 nguyệt 10 ngàyDuyệt lãm.
- ^Tinh hiểu hùng = ngày kinh BP Javaプロジェクト (2003 năm 10 nguyệt 31 ngày ). “EclipseとWebSphere Studioはどう vi う の か | ngày kinh xTECH ( クロステック )”.Ngày kinh xTECH ( クロステック ).Nikkei Business Publications, Inc..2019 năm 11 nguyệt 17 ngàyDuyệt lãm.
- ^Sun Microsystems, Inc (2007 năm 5 nguyệt 8 ngày ). “Sun Fulfills Promise of Open and Free Java Technology and Releases Java SE Platform to OpenJDK Community”.2009 năm 9 nguyệt 16 ngàyDuyệt lãm.
- ^http:// excelsior-usa /jet.html
- ^“オラクル Java SE nhận định tư cách パス điểm chính”.2019 năm 3 nguyệt 7 ngàyDuyệt lãm.
- ^“オラクル Java EE and Web Services nhận định tư cách パス điểm chính”.2019 năm 3 nguyệt 7 ngàyDuyệt lãm.
- ^“Java Foundations Certified Junior Associate (novice-level certification)”.2019 năm 3 nguyệt 10 ngàyDuyệt lãm.
- ^“Nhận định thí nghiệm một lãm”.2019 năm 3 nguyệt 7 ngàyDuyệt lãm.
- ^“Java tư cách が trên diện rộng リニューアル. Bronze/Silver/Goldが lên sân khấu”.2019 năm 3 nguyệt 7 ngàyDuyệt lãm.
Tham khảo văn hiến
[Biên tập]- Jon Byous,Java technology: The early years.Sun Developer Network, ngày phó không rõ ( 1998 năm khoảnh ). ( 2005 năm 4 nguyệt 22 ngày に tham chiếu )
- James Gosling,A brief history of the Green project.Java.net, ngày phó không rõ ( 1998 năm đệ 1 bốn nửa kỳ khoảnh ). ( 2005 năm 4 nguyệt 22 ngày に tham chiếu )
- James Gosling,Bill Joy,Guy Steele,and Gilad Bracha,The Java language specification,third edition. Addison-Wesley, 2005.ISBN 0-321-24678-0.
- Thôn thượng nhã chương ( 訳 ) 『Java ngôn ngữ sĩ dạng đệ 3 bản 』 ピアソン・エデュケーション, 2006 năm,ISBN 4-89471-715-8
- Tim Lindholm and Frank Yellin.The Java Virtual Machine specification,second edition. Addison-Wesley, 1999.ISBN 0-201-43294-3.
- Thôn thượng nhã chương ( 訳 ) 『Java 仮 tưởng マシン sĩ dạng đệ 2 bản 』 ピアソン・エデュケーション, 2001 năm,ISBN 4-89471-356-X
- ジョシュア・ブロック ( ), sài điền phương thụ ( 訳 ) 『Effective Java プログラミング ngôn ngữ ガイド』 ピアソン・エデュケーション, 2001 năm,ISBN 4-89471-436-1
Quan liền hạng mục
[Biên tập]- Java の ngữ pháp
- Java の キーワード ( dư ước ngữ )
- Java の tính năng
- Javaに đối する phê phán
- C♯とJava の tương đối
- Java仮 tưởng マシン
- Javaコンパイラ
- Java Community Process- Java kỹ thuật の chuẩn hoá プロセス
- Javaチャンピオン
Phần ngoài リンク
[Biên tập]オラクル・JCP quan liền
- Java - Java の ユーザー hướng け công thức サイト
- Javaソフトウェア | オラクル | Oracle Nhật Bản- オラクル
- Java Community Process - JCP の サイト. JSRなどを duyệt lãm できる
Kỹ thuật tình báo
- @IT: Java Agile - Java kỹ thuật giả の ため の tình báo cung cấp / tình báo trao đổi フォーラム
- IBM developerWorks Java technology - IBM developerWorks の khai phát giả hướng け の ký sự
- OpenJDK