Kiến thức

Có gì mới trong JDK 18 04 tháng 04, 2022 – 3 lượt xem TechMaster Lập trình Java Đầu mục bài viết Bài viết liên quan Khoá học hay

Java Development Kit (JDK) 18 hiện có sẵn dưới dạng bản phát hành sản xuất chính thức được phát hành vào ngày 22 tháng 3 5 2022. Cùng lúc khám phá những điểm mới trong bản phát hành này.

1. Bác bỏ Hoàn thiện cho công đoạn loại trừ

Finalizer Có những sơ sót gây ra các vấn đề nghiêm trọng trong toàn cầu thực về bảo mật, hiệu suất, độ tin tưởng và bản lĩnh bảo trì. Nó cũng là 1 mẫu hình lập trình khó. Finalization được bật theo mặc định ngay hiện giờ nhưng mà có thể bị tắt để giúp cho công đoạn thí điểm sớm. Nó sẽ bị tắt theo mặc định trong bản phát hành công dụng và bị loại trừ hoàn toàn trong bản phát hành sau.

Yêu cầu đề xuất tùy chọn dòng lệnh để tắt finalization và dừng sử dụng tất cả finalizers và bí quyết finalization trong API Java tiêu chuẩn. Các chỉ tiêu của yêu cầu bao gồm việc giúp các nhà tăng trưởng hiểu được sự nguy nan của finalizationsẵn sàng cho các nhà tăng trưởng để loại trừ chung cuộc của nó và cung ứng các dụng cụ dễ ợt để giúp phát hiện sự lệ thuộc finalization

Được giới thiệu trong Java 1.0, cải tiến nhằm giúp chặn đứng rò rỉ khoáng sản. 1 lớp có thể khai báo 1 finalizer – bí quyết protected void finalize()– cơ quan giải phóng mọi khoáng sản căn bản. Người thu nhặt rác sẽ lên lịch finalizer của 1 nhân vật chẳng thể truy cập sẽ được gọi trước lúc nó lấy lại bộ nhớ nhân vật; Tới lượt mình, bí quyết finalize() có thể tiến hành các hành động chả hạn như gọi nhân vật của close.

Do các vấn đề với công đoạn hoàn thiện, các nhà tăng trưởng nên sử dụng các kỹ thuật thay thế để tránh rò rỉ khoáng sản, chi tiết là các câu lệnh rà soát với khoáng sản và trình thu dọn.

2. Biện pháp địa chỉ Internet

Internet-address resolution SPI, gợi ý là xác định SPI để phân giải địa chỉ máy chủ lưu trữ và đặt tên cho Inet. Địa chỉ có thể sử dụng các trình phân giải khác với các trình phân giải tích hợp sẵn của nền móng. Các động lực cho phấn đấu này bao gồm việc kích hoạt Project Loom tốt hơn, cho các mẫu hình lập trình hiện nay và mới trong Java, cộng với việc tích hợp các giao thức mạng mới, tùy chỉnh và thí điểm. Yêu cầu không phù hợp tới việc tăng trưởng 1 trình phân giải thay thế cho JDK.

3. Khớp mẫu cho Switch

Trong bản xem trước thứ 2 của Khớp mẫu cho Switch, trong ấy tiếng nói Java sẽ được cải tiến với công dụng đối sánh mẫu cho các biểu thức và câu lệnh switch, cộng với các phần mở mang cho tiếng nói của các mẫu. Điều này đã được xem trước trong JDK 17. Việc mở mang đối sánh mẫu để biến đổi cho phép 1 biểu thức được rà soát dựa trên 1 số mẫu, mỗi mẫu có 1 hành động chi tiết, thành ra các truy hỏi hướng dữ liệu phức tạp có thể được diễn tả ngắn gọn. và an toàn.

4. Tiến hành lại phản xạ mấu chốt với các tay cầm bí quyết

Công đoạn tái tiến hành phản xạ mấu chốt với các chốt bí quyết sẽ tiến hành lại lang.reflect.MethodConstructorField về đầu trang của các bí quyết xử lý java.lang.invoke. Có các phương thức xử lý nhập vai trò là chế độ căn bản để phản ảnh sẽ giảm chi tiêu bảo trì và tăng trưởng của cả API java.lang.reflectjava.lang.invoke.

5. Yêu cầu máy chủ web dễ ợt

Với yêu cầu máy chủ web dễ ợt, 1 dòng lệnh sẽ được cung ứng để khởi động 1 máy chủ web tối thiểu chỉ dùng cho các tệp tĩnh. Ko có CGI hoặc tác dụng giống như servlet nào. Phương tiện này sẽ hữu dụng cho việc tạo mẫu, mã hóa đặc thù và thí điểm, đặc thù là trong bối cảnh giáo dục.

Các chỉ tiêu của kế hoạch bao gồm cung ứng 1 máy chủ tệp HTTP tĩnh ngoài hộp với thiết lập dễ dãi và tác dụng tối thiểu, giảm năng lượng kích hoạt của nhà tăng trưởng và khiến cho JDK dễ truy cập hơn và cung ứng mặc định khai triển phê duyệt dòng lệnh cộng với 1 API bé để kiến lập trình và sự tùy biến.

6. Các hàm ngoại và API bộ nhớ

1 API được giới thiệu qua ấy các chương trình Java có thể tương tác với mã và dữ liệu bên ngoài thời kì chạy Java. Bằng cách gọi các hàm ngoại – mã bên ngoài JVM – và bằng cách truy cập an toàn vào bộ nhớ ngoài – bộ nhớ ko được điều hành bởi JVM – API cho phép các chương trình Java gọi các thư viện gốc và xử lý dữ liệu nguyên bản nhưng ko gặp nguy nan và tính dễ vỡ của JNI (Java Native Giao diện).

Tiêu chí là thay thế JNI bằng 1 mẫu hình tăng trưởng Java thuần túy, ưu việt hơn. API này được ấp ôm trong JDK 17. Đối với JDK 18, các cải tiến sẽ được liên kết dựa trên phản hồi, chả hạn như cung cấp cho nhiều nhà cung ứng dịch vụ hơn như Boolean và MemoryAddress trong bộ nhớ var chốt truy cập và 1 API mới để sao chép mảng Java tới và từ các phân đoạn kỉ niệm.

7. Vectơ API

Yêu cầu này sẽ đại diện cho các phép tính vectơ biên dịch chỉ cần khoảng chạy thành các lệnh vectơ tối ưu trên các kiến ​​trúc CPU được cung cấp, đạt được hiệu suất vượt bậc so với các phép tính vô hướng tương đương.

Các phép toán vectơ trình bày chừng độ song song cho phép tiến hành nhiều công tác hơn trong mỗi chu kỳ CPU, do ấy tạo ra các cải tiến hiệu suất đáng kể.

API vectơ bất khả tri của nền móng nhằm mục tiêu cung ứng cách viết các thuật toán phức tạp trong Java, sử dụng dụng cụ vẽ vectơ HotSpot hiện có nhưng mà với mẫu hình người mua giúp vectơ hóa dễ dự báo hơn.

JDK 18 cũng sẽ bổ sung cung cấp cho nền móng Mở mang Vectơ vô hướng ARM và cải thiện hiệu suất của các hoạt động vectơ bằng lòng mặt nạ trên các kiến ​​trúc cung cấp tạo mặt nạ trong phần cứng.

8. Chỉ định UTF-8 làm bộ ký tự mặc định của các API Java tiêu chuẩn

UTF-8 là 1 mã hóa ký tự có độ rộng chỉnh sửa cho giao tiếp điện tử và được coi là bộ ký tự tiêu chuẩn của web. Charset là 1 bảng mã ký tự có bản lĩnh mã hóa tất cả các ký tự trên web.

Phê chuẩn chỉnh sửa này, các API lệ thuộc vào bộ ký tự mặc định sẽ hoạt động nhất quán trên tất cả các khai triển, hệ quản lý, tiếng nói và cấu hình. Yêu cầu ko nhằm xác định các API mới theo tiêu chuẩn Java hoặc các JDK chi tiết.

Những người ủng hộ yêu cầu chờ đợi rằng các phần mềm trong nhiều môi trường sẽ ko bị tác động bởi sự chọn lựa UTF-8 của Java, vì MacOS, nhiều bản cung cấp Linux và nhiều phần mềm máy chủ đã cung cấp UTF-8. Bên cạnh đó, có 1 xui xẻo trong các môi trường khác, phần đông rõ ràng là các phần mềm lệ thuộc vào codec mặc định sẽ hoạt động ko chuẩn xác lúc xử lý dữ liệu được tạo ra lúc codec mặc định ko được chỉ định.

9. Đoạn mã

Các đoạn mã trong tài liệu Java API, liên can tới việc giới thiệu thẻ @snippet cho Tài liệu chuẩn của JavaDoc, để dễ ợt hóa việc đưa mã nguồn mẫu vào tài liệu API.

Trong số các chỉ tiêu của kế hoạch là tạo điều kiện thuận tiện cho việc công nhận các đoạn mã nguồn bằng cách cung ứng quyền truy cập API vào các đoạn ấy. Dù rằng tính đúng mực là phận sự của tác giả, nhưng mà cung cấp tăng lên trong JavaDoc và các dụng cụ liên can có thể giúp bạn đạt được điều ấy dễ dãi hơn.

Dù rằng JDK 18 là bản phát hành chẳng phải LTS (Cung cấp dài hạn) chỉ được cung cấp trong 6 tháng, nhưng mà nó vẫn mang 1 số chỉnh sửa về chất lượng. Các bản phát hành LTS sẽ ra mắt 2 5 1 lần, với bản tiếp theo, JDK 21, sẽ ra mắt vào tháng 9 5 2023. Tiếp theo JDK 18, JDK 19 sẽ ra mắt vào tháng 9 này. Hãy cùng kì vọng bản cập nhật trong JDK 19


Thông tin thêm

Có gì mới trong JDK 18
04 tháng 04, 2022 – 3 lượt xem
TechMaster Lập trình Java
Đầu mục bài viết
Bài viết liên can
Khoá học hay

#Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
[rule_3_plain] #Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
Java Development Kit (JDK) 18 hiện đã có sẵn dưới dạng bản phát hành sản xuất chính thức được ra mắt ngày 22/3/2022. Hãy cũng khám phá xem có gì mới trong bạn dạng này.1. Bác bỏ Finalization cho công đoạn removalFinalizer có các sơ sót gây ra các vấn đê nghiệm trọng trong thế giơi thực về bảo mật, hiệu suất, độ tin cây và bản lĩnh bảo trì. Nó cũng là 1 mẫu hình lập trình khó. Finalization được bật theo mặc định ngay hiện giờ nhưng mà có thể bị tắt để giúp cho công đoạn thí điểm sớm. Nó sẽ bị tắt theo mặc định trong bản phát hành công dụng và bị xóa hoàn toàn trong bản phát hành sau.Yêu cầu đề xuất 1 tùy chọn dòng lệnh để vô hiệu hóa finalization và dừng sử dụng tất cả các finalizers và phương thức finalization trong Java API tiêu chuẩn. Các chỉ tiêu của yêu cầu bao gồm giúp các nhà tăng trưởng hiểu được sự nguy nan của finalization, sẵn sàng cho các nhà tăng trưởng trước việc loại trừ chung cuộc của nó và cung ứng các dụng cụ dễ ợt để giúp phát hiện sự lệ thuộc vào finalizationĐược giới thiệu trong Java 1.0, việc hoàn thiện nhằm giúp tránh rò rỉ khoáng sản. 1 lớp có thể khai báo 1 finalizer – phương thức protected void finalize()- cơ quan giải phóng bất cứ khoáng sản căn bản nào. Bộ thu nhặt rác sẽ lên lịch finalizer của 1 nhân vật chẳng thể truy cập được sẽ được gọi trước lúc nó lấy lại bộ nhớ nhân vật; Tới lượt nó, phương thức finalize() có thể tiến hành các hành động chả hạn như gọi nhân vật của close.Do các vấn đề với công đoạn hoàn thiện, các nhà tăng trưởng nên sử dụng các kỹ thuật thay thế để tránh rò rỉ khoáng sản, chi tiết là các câu lệnh thử với khoáng sản và trình thu dọn.2. Internet Address ResolutionĐối với Internet-address resolution SPI, yêu cầu là xác định SPI cho độ phân giải địa chỉ máy chủ và tên để Inet. Address có thể sử dụng các bộ phân giải khác với bộ phân giải tích hợp sẵn của nền móng. Động lực cho phấn đấu này bao gồm việc kích hoạt tốt hơn Project Loom, cho các mẫu hình lập trình bây giờ và mới trong Java, cộng với việc tích hợp các giao thức mạng mới, tùy chỉnh và cho phép thí điểm. Yêu cầu không phù hợp tới việc tăng trưởng 1 trình phân giải thay thế cho JDK.3. Pattern Matching for SwitchTrong bản preview thứ 2 của Pattern Matching for Switch, trong ấy tiếng nói Java sẽ được cải tiến với đối sánh mẫu cho các switch biểu thức và câu lệnh, cộng với các phần mở mang cho tiếng nói của các mẫu. Điều này đã được xem trước trong JDK 17 . Mở mang đối sánh mẫu để switch cho phép 1 biểu thức được rà soát dựa trên 1 số mẫu, mỗi mẫu có 1 hành động chi tiết, do ấy, các truy hỏi hướng dữ liệu phức tạp có thể được trình bày 1 cách ngắn gọn và an toàn.4. Reimplementation of core reflection with method handlesViệc tiến hành lại phản xạ lõi với các chốt phương thức sẽ tiến hành lại lang.reflect.Method và Constructor và Field trên đầu các phương thức xử lý java.lang.invoke. Có các phương thức xử lý nhập vai trò là chế độ căn bản để phản ảnh sẽ giảm chi tiêu bảo trì và tăng trưởng của cả API java.lang.reflect và java.lang.invoke.5. Simple web server proposalVới yêu cầu máy chủ web dễ ợt, 1 command-line sẽ được cung ứng để khởi động 1 máy chủ web tối thiểu chỉ dùng cho các tệp tĩnh. Ko có CGI hoặc tác dụng giống như servlet nào. Phương tiện này sẽ hữu dụng cho việc tạo mẫu, mã hóa đặc thù và thí điểm, đặc thù là trong các bối cảnh giáo dục.Các chỉ tiêu của kế hoạch bao gồm cung ứng máy chủ tệp HTTP tĩnh ngoài hộp với thiết lập dễ dãi và tác dụng tối thiểu, giảm năng lượng kích hoạt của nhà tăng trưởng và khiến cho JDK dễ tiếp cận hơn và cung ứng khai triển mặc định phê duyệt dòng lệnh cộng với 1 API bé để tạo và tùy chỉnh có lập trình.6. Foreign function và memory APIMột API được giới thiệu qua ấy các chương trình Java có thể tương tác với mã và dữ liệu bên ngoài thời kì chạy Java. Bằng cách gọi các hàm ngoại – mã bên ngoài JVM – và bằng cách truy cập an toàn vào bộ nhớ ngoại – bộ nhớ ko được điều hành bởi JVM – API cho phép các chương trình Java gọi các thư viện gốc và xử lý dữ liệu gốc nhưng ko có sự nguy nan và dễ vỡ của JNI (Java Native Interface).Mục tiêu là thay thế JNI bằng 1 mẫu hình tăng trưởng Java thuần túy, ưu việt hơn. API này được ấp ôm trong JDK 17. Đối với JDK 18, các cải tiến sẽ được liên kết dựa trên phản hồi, chả hạn như cung cấp cho nhiều nhà cung ứng dịch vụ hơn như Boolean và MemoryAddress trong các chốt var truy cập bộ nhớ và 1 API mới để sao chép mảng Java vào và từ bộ nhớ các phân đoạn.7. API vectorĐề xuất này sẽ trình bày các phép tính vector biên dịch tại khi runtime thành các lệnh vector tối ưu trên các kiến ​​trúc CPU được cung cấp, đạt được hiệu suất vượt bậc so với các phép tính vô hướng tương đương.Các hoạt động vector trình bày chừng độ song song cho phép tiến hành nhiều công tác hơn trên 1 chu kỳ CPU, do ấy tạo ra những cải tiến hiệu suất đáng kể.API vector bất khả trị nền móng nhằm mục tiêu cung ứng cách viết các thuật toán phức tạp trong Java, sử dụng dụng cụ vẽ vector tự động HotSpot hiện có nhưng mà với mẫu hình người mua giúp vector hóa dễ đoán hơn.JDK 18 cũng sẽ cung cấp thêm cho nền móng ARM Scalar Vector Extension và cải thiện hiệu suất của các hoạt động vector bằng lòng mặt nạ trên các kiến ​​trúc cung cấp tạo mặt nạ trong phần cứng.8. Chỉ định UTF-8 làm bộ ký tự mặc định của các Java API tiêu chuẩnUTF-8 là 1 mã hóa ký tự có độ rộng chỉnh sửa cho giao tiếp điện tử và được coi là bộ ký tự tiêu chuẩn của web. Charset là mã hóa ký tự có bản lĩnh mã hóa tất cả các ký tự trên web.Phê chuẩn chỉnh sửa này, các API lệ thuộc vào bộ ký tự mặc định sẽ hoạt động nhất quán trên tất cả các khai triển, hệ quản lý, tiếng nói và cấu hình. Yêu cầu ko nhằm xác định các API mới theo tiêu chuẩn Java hoặc JDK chi tiết.Những người ủng hộ yêu cầu chờ đợi rằng các phần mềm trong nhiều môi trường sẽ ko bị tác động bởi sự chọn lựa UTF-8 của Java, vì MacOS, nhiều bản cung cấp Linux và nhiều phần mềm máy chủ đã cung cấp UTF-8. Bên cạnh đó, có xui xẻo trong các môi trường khác, rõ ràng nhất là các phần mềm lệ thuộc vào bộ mã mặc định sẽ hoạt động ko chuẩn xác lúc xử lý dữ liệu được tạo ra lúc bộ mã mặc định ko được chỉ định.9. Code SnippetsCác đoạn mã trong tài liệu API Java , liên can tới việc giới thiệu thẻ @snippet cho JavaDoc’s Standard Doclet, để dễ ợt hóa việc đưa mã nguồn mẫu vào tài liệu API.Trong số các chỉ tiêu của kế hoạch là tạo điều kiện thuận tiện cho việc chính xác các đoạn mã nguồn bằng cách cung ứng quyền truy cập API vào các đoạn ấy. Dù rằng tính đúng mực là phận sự của tác giả, cung cấp tăng lên trong JavaDoc và các dụng cụ liên can có thể giúp bạn đạt được điều ấy dễ dãi hơn.Dù rằng JDK 18 là 1 bản phát hành chẳng phải LTS (Cung cấp dài hạn) chỉ được cung cấp 6 tháng, nhưng mà vẫn mang 1 số chỉnh sửa chất lượng. Các bản phát hành LTS sẽ ra mắt 2 5 1 lần, với bản tiếp theo, JDK 21, sẽ ra mắt vào tháng 9 5 2023. Tiếp theo JDK 18, JDK 19 sẽ ra mắt vào tháng 9 này. Hãy cùng kì vọng có gì cập nhật trong bản JDK 19 nhé
#Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
[rule_2_plain] #Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
[rule_2_plain] #Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
[rule_3_plain]

#Có #gì #mới #trong #JDK #tháng #lượt #xem #TechMaster #Lập #trình #Java #Đầu #mục #bài #viếtBài #viết #liên #quanKhoá #học #hay
Java Development Kit (JDK) 18 hiện đã có sẵn dưới dạng bản phát hành sản xuất chính thức được ra mắt ngày 22/3/2022. Hãy cũng khám phá xem có gì mới trong bạn dạng này.1. Bác bỏ Finalization cho công đoạn removalFinalizer có các sơ sót gây ra các vấn đê nghiệm trọng trong thế giơi thực về bảo mật, hiệu suất, độ tin cây và bản lĩnh bảo trì. Nó cũng là 1 mẫu hình lập trình khó. Finalization được bật theo mặc định ngay hiện giờ nhưng mà có thể bị tắt để giúp cho công đoạn thí điểm sớm. Nó sẽ bị tắt theo mặc định trong bản phát hành công dụng và bị xóa hoàn toàn trong bản phát hành sau.Yêu cầu đề xuất 1 tùy chọn dòng lệnh để vô hiệu hóa finalization và dừng sử dụng tất cả các finalizers và phương thức finalization trong Java API tiêu chuẩn. Các chỉ tiêu của yêu cầu bao gồm giúp các nhà tăng trưởng hiểu được sự nguy nan của finalization, sẵn sàng cho các nhà tăng trưởng trước việc loại trừ chung cuộc của nó và cung ứng các dụng cụ dễ ợt để giúp phát hiện sự lệ thuộc vào finalizationĐược giới thiệu trong Java 1.0, việc hoàn thiện nhằm giúp tránh rò rỉ khoáng sản. 1 lớp có thể khai báo 1 finalizer – phương thức protected void finalize()- cơ quan giải phóng bất cứ khoáng sản căn bản nào. Bộ thu nhặt rác sẽ lên lịch finalizer của 1 nhân vật chẳng thể truy cập được sẽ được gọi trước lúc nó lấy lại bộ nhớ nhân vật; Tới lượt nó, phương thức finalize() có thể tiến hành các hành động chả hạn như gọi nhân vật của close.Do các vấn đề với công đoạn hoàn thiện, các nhà tăng trưởng nên sử dụng các kỹ thuật thay thế để tránh rò rỉ khoáng sản, chi tiết là các câu lệnh thử với khoáng sản và trình thu dọn.2. Internet Address ResolutionĐối với Internet-address resolution SPI, yêu cầu là xác định SPI cho độ phân giải địa chỉ máy chủ và tên để Inet. Address có thể sử dụng các bộ phân giải khác với bộ phân giải tích hợp sẵn của nền móng. Động lực cho phấn đấu này bao gồm việc kích hoạt tốt hơn Project Loom, cho các mẫu hình lập trình bây giờ và mới trong Java, cộng với việc tích hợp các giao thức mạng mới, tùy chỉnh và cho phép thí điểm. Yêu cầu không phù hợp tới việc tăng trưởng 1 trình phân giải thay thế cho JDK.3. Pattern Matching for SwitchTrong bản preview thứ 2 của Pattern Matching for Switch, trong ấy tiếng nói Java sẽ được cải tiến với đối sánh mẫu cho các switch biểu thức và câu lệnh, cộng với các phần mở mang cho tiếng nói của các mẫu. Điều này đã được xem trước trong JDK 17 . Mở mang đối sánh mẫu để switch cho phép 1 biểu thức được rà soát dựa trên 1 số mẫu, mỗi mẫu có 1 hành động chi tiết, do ấy, các truy hỏi hướng dữ liệu phức tạp có thể được trình bày 1 cách ngắn gọn và an toàn.4. Reimplementation of core reflection with method handlesViệc tiến hành lại phản xạ lõi với các chốt phương thức sẽ tiến hành lại lang.reflect.Method và Constructor và Field trên đầu các phương thức xử lý java.lang.invoke. Có các phương thức xử lý nhập vai trò là chế độ căn bản để phản ảnh sẽ giảm chi tiêu bảo trì và tăng trưởng của cả API java.lang.reflect và java.lang.invoke.5. Simple web server proposalVới yêu cầu máy chủ web dễ ợt, 1 command-line sẽ được cung ứng để khởi động 1 máy chủ web tối thiểu chỉ dùng cho các tệp tĩnh. Ko có CGI hoặc tác dụng giống như servlet nào. Phương tiện này sẽ hữu dụng cho việc tạo mẫu, mã hóa đặc thù và thí điểm, đặc thù là trong các bối cảnh giáo dục.Các chỉ tiêu của kế hoạch bao gồm cung ứng máy chủ tệp HTTP tĩnh ngoài hộp với thiết lập dễ dãi và tác dụng tối thiểu, giảm năng lượng kích hoạt của nhà tăng trưởng và khiến cho JDK dễ tiếp cận hơn và cung ứng khai triển mặc định phê duyệt dòng lệnh cộng với 1 API bé để tạo và tùy chỉnh có lập trình.6. Foreign function và memory APIMột API được giới thiệu qua ấy các chương trình Java có thể tương tác với mã và dữ liệu bên ngoài thời kì chạy Java. Bằng cách gọi các hàm ngoại – mã bên ngoài JVM – và bằng cách truy cập an toàn vào bộ nhớ ngoại – bộ nhớ ko được điều hành bởi JVM – API cho phép các chương trình Java gọi các thư viện gốc và xử lý dữ liệu gốc nhưng ko có sự nguy nan và dễ vỡ của JNI (Java Native Interface).Mục tiêu là thay thế JNI bằng 1 mẫu hình tăng trưởng Java thuần túy, ưu việt hơn. API này được ấp ôm trong JDK 17. Đối với JDK 18, các cải tiến sẽ được liên kết dựa trên phản hồi, chả hạn như cung cấp cho nhiều nhà cung ứng dịch vụ hơn như Boolean và MemoryAddress trong các chốt var truy cập bộ nhớ và 1 API mới để sao chép mảng Java vào và từ bộ nhớ các phân đoạn.7. API vectorĐề xuất này sẽ trình bày các phép tính vector biên dịch tại khi runtime thành các lệnh vector tối ưu trên các kiến ​​trúc CPU được cung cấp, đạt được hiệu suất vượt bậc so với các phép tính vô hướng tương đương.Các hoạt động vector trình bày chừng độ song song cho phép tiến hành nhiều công tác hơn trên 1 chu kỳ CPU, do ấy tạo ra những cải tiến hiệu suất đáng kể.API vector bất khả trị nền móng nhằm mục tiêu cung ứng cách viết các thuật toán phức tạp trong Java, sử dụng dụng cụ vẽ vector tự động HotSpot hiện có nhưng mà với mẫu hình người mua giúp vector hóa dễ đoán hơn.JDK 18 cũng sẽ cung cấp thêm cho nền móng ARM Scalar Vector Extension và cải thiện hiệu suất của các hoạt động vector bằng lòng mặt nạ trên các kiến ​​trúc cung cấp tạo mặt nạ trong phần cứng.8. Chỉ định UTF-8 làm bộ ký tự mặc định của các Java API tiêu chuẩnUTF-8 là 1 mã hóa ký tự có độ rộng chỉnh sửa cho giao tiếp điện tử và được coi là bộ ký tự tiêu chuẩn của web. Charset là mã hóa ký tự có bản lĩnh mã hóa tất cả các ký tự trên web.Phê chuẩn chỉnh sửa này, các API lệ thuộc vào bộ ký tự mặc định sẽ hoạt động nhất quán trên tất cả các khai triển, hệ quản lý, tiếng nói và cấu hình. Yêu cầu ko nhằm xác định các API mới theo tiêu chuẩn Java hoặc JDK chi tiết.Những người ủng hộ yêu cầu chờ đợi rằng các phần mềm trong nhiều môi trường sẽ ko bị tác động bởi sự chọn lựa UTF-8 của Java, vì MacOS, nhiều bản cung cấp Linux và nhiều phần mềm máy chủ đã cung cấp UTF-8. Bên cạnh đó, có xui xẻo trong các môi trường khác, rõ ràng nhất là các phần mềm lệ thuộc vào bộ mã mặc định sẽ hoạt động ko chuẩn xác lúc xử lý dữ liệu được tạo ra lúc bộ mã mặc định ko được chỉ định.9. Code SnippetsCác đoạn mã trong tài liệu API Java , liên can tới việc giới thiệu thẻ @snippet cho JavaDoc’s Standard Doclet, để dễ ợt hóa việc đưa mã nguồn mẫu vào tài liệu API.Trong số các chỉ tiêu của kế hoạch là tạo điều kiện thuận tiện cho việc chính xác các đoạn mã nguồn bằng cách cung ứng quyền truy cập API vào các đoạn ấy. Dù rằng tính đúng mực là phận sự của tác giả, cung cấp tăng lên trong JavaDoc và các dụng cụ liên can có thể giúp bạn đạt được điều ấy dễ dãi hơn.Dù rằng JDK 18 là 1 bản phát hành chẳng phải LTS (Cung cấp dài hạn) chỉ được cung cấp 6 tháng, nhưng mà vẫn mang 1 số chỉnh sửa chất lượng. Các bản phát hành LTS sẽ ra mắt 2 5 1 lần, với bản tiếp theo, JDK 21, sẽ ra mắt vào tháng 9 5 2023. Tiếp theo JDK 18, JDK 19 sẽ ra mắt vào tháng 9 này. Hãy cùng kì vọng có gì cập nhật trong bản JDK 19 nhé

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Back to top button