หน้าแรก
หน้าแรก
A โมดูล เป็นคอนเทนเนอร์ของแพ็คเกจและแต่ละโมดูลมีตัวอธิบายโมดูลที่มี โมดูล ชื่อ , โมดูล การพึ่งพา หมายความว่าชื่อของโมดูลอื่นขึ้นอยู่กับและชื่อของแพ็คเกจที่ส่งออกซึ่งสามารถใช้ได้เฉพาะโดยโมดูลที่ขึ้นอยู่กับโมดูลเท่านั้น module com.tutorialspoint.app { /** Modules upon which the module
ตั้งแต่ Java 9 readNBytes() สามารถเพิ่มวิธีการ InputStream ระดับ. เมธอดนี้จะอ่านจำนวนไบต์ที่ร้องขอจากอินพุตสตรีมไปยัง ไบต์อาร์เรย์ . เมธอดนี้บล็อกจนถึง len ไบต์ ของข้อมูลที่ป้อนเข้าได้อ่านแล้ว ตรวจพบจุดสิ้นสุดของสตรีม หรือมีข้อยกเว้นเกิดขึ้น readNBytes() วิธีการไม่ปิดกระแสข้อมูลเข้า วิธีนี้มีประโยช
วัตถุประสงค์หลักของ จิ๊กซอว์ โครงการ คือการแนะนำ โมดูลาร์ แนวคิดในการสร้างโมดูลใน Java 9 แล้วนำไปใช้กับ JDK . ด้านล่างนี้คือข้อดีบางประการของModularity (จิ๊กซอว์ ) การห่อหุ้มที่แข็งแกร่ง: โมดูลสามารถเข้าถึงเฉพาะส่วนที่สามารถใช้ได้ เว้นแต่จะส่งออกแพ็คเกจไปยัง module-info.java . อย่างชัดเจน file
JShell เป็นเครื่องมือโต้ตอบที่ช่วยให้เราสามารถรันโค้ดจาวาและได้ผลลัพธ์ทันที เราประเมินนิพจน์หรืออัลกอริธึมสั้นๆ อย่างรวดเร็วโดยไม่ต้องคอมไพล์หรือสร้างมันขึ้นมา เราสามารถดำเนินการ นิพจน์ , ชั้นเรียน , วิธีการ , ตัวแปร, และอื่นๆ ด้วยความช่วยเหลือของเครื่องมือ JShell ด้านล่างคือ แป้นพิมพ์ ทางลัด กุ
JShell เป็นเครื่องมือโต้ตอบที่เปิดตัวตั้งแต่ Java 9 เป็นเครื่องมือ REPL อย่างเป็นทางการตัวแรกของ Java ที่สร้างสภาพแวดล้อมการเขียนโปรแกรมอย่างง่ายในบรรทัดคำสั่งที่อ่านอินพุตของผู้ใช้ ประเมิน และพิมพ์ผลลัพธ์ เราสามารถสร้างอินสแตนซ์ JShell ใหม่ได้ โดยทางโปรแกรมในภาษาจาวา JShell และ API ที่เกี่ยวข้องส
JShell เป็น บรรทัดคำสั่ง เครื่องมือ ที่ช่วยให้เราป้อนคำสั่ง Java (คำสั่งง่าย คำสั่งผสม หรือแม้แต่เมธอดและคลาสทั้งหมด) ประเมินและพิมพ์ผลลัพธ์ ไปข้างหน้า ข้อมูลอ้างอิง เป็นคำสั่งที่อ้างอิงถึง วิธีการ , ตัวแปร หรือ คลาส ที่ไม่มีอยู่ในรหัสใด ๆ ที่เราได้พิมพ์ใน JShell เมื่อโค้ดป้อนและประเมินตามลำดับ
นักสะสม คลาสเป็นส่วนสำคัญของ สตรีม API . ใน Java 9 วิธีการใหม่:filtering() เพิ่มใน นักสะสม ระดับ. Collectors.filtering() สามารถใช้วิธีการกรององค์ประกอบในสตรีม คล้ายกับ filter() วิธีการในสตรีม ตัวกรอง() method ประมวลผลค่าก่อนที่จะจัดกลุ่มในขณะที่ filtering() สามารถใช้ได้ดีกับ Collectors.groupingB
ใน Java 9 มีการเพิ่มวิธีการใหม่ในคลาส Collectors:flatMapping() . คล้ายกับ Collectors.mapping() วิธีการที่ flatMapping() วิธีการช่วยให้เราจัดการกับคอลเลกชันที่ซ้อนกัน Collectors.flatMapping() method ใช้ฟังก์ชันที่จะนำไปใช้กับองค์ประกอบอินพุตและตัวรวบรวมเพื่อสะสมองค์ประกอบที่ส่งผ่านฟังก์ชัน ไม่เหมือนก
Java 9 เปิดตัว StackWalker API เป็นทางเลือกแทน Thread.getStackTrace() หรือ Throwable.getStackTrace() และ SecurityManager.getClassContext() . API นี้ตั้งเป้าไปที่กลไกในการสำรวจและสร้างสแต็กเฟรมที่จำเป็น ช่วยให้เข้าถึงสแต็กเฟรมเพิ่มเติมได้อย่างมีประสิทธิภาพเมื่อจำเป็น หากเราจำเป็นต้องเข้าถึงแต่ละอง
การทำให้เป็นสากล การปรับปรุงใน Java 9 ได้แก่ Unicode 8.0 , UTF-8 ไฟล์คุณสมบัติและเปิดใช้งาน CLDR สถานที่ ข้อมูล โดยค่าเริ่มต้น. Java 9 รองรับสูงสุด Unicode 8.0 มาตรฐาน ด้วยอักขระ 10,555 ตัว 29 สคริปต์ และ 42 บล็อก ใน Java 9 ไฟล์คุณสมบัติจะถูกโหลดในการเข้ารหัส UTF-8 . โดยค่าเริ่มต้น การอ่านสตรี
ใน Java 9 LocalDate คลาสให้ toEpochSecond() วิธีการแปลงวันที่ในท้องถิ่นเป็นวินาทีของยุค . toEpochSecond() วิธีการแปลง LocalDate เป็นวินาทีตั้งแต่ยุค 1970-01-01T00:00:00Z . LocalDate สามารถรวมกับ เวลา . ที่กำหนดได้ และ โซน ออฟเซ็ต เพื่อคำนวณวินาทีตั้งแต่ 1970-01-01T00:00:00Z. ไวยากรณ์ public lon
ใน Java 9 ofInstant() ได้แนะนำวิธีการแปลง เป็นวิธีการคงที่ของ LocalDate , เวลาท้องถิ่น และ LocalDateTime ชั้นเรียน วิธีการนี้จะแปลง java.time.Instant วัตถุเป็น LocalDate ที่ต้องการเขตเวลาในรูปแบบของ java.time.ZoneId . ไวยากรณ์ public static LocalTime ofInstant(Instant instant, ZoneId zone) public
ใน Java 9 ประมวลผล API รองรับวิธีง่ายๆ ในการรับข้อมูลมากมายเกี่ยวกับกระบวนการ ตัวจัดการกระบวนการ อินเทอร์เฟซสามารถระบุและให้การควบคุมของกระบวนการดั้งเดิมและวิธีการตรวจสอบความสดของกระบวนการและทำลายกระบวนการในขณะที่ ProcessHandle.Info อินเทอร์เฟซสามารถให้ภาพรวมข้อมูลของกระบวนการได้ เราจำเป็นต้องทำลาย
กระบวนการ การจัดการ มีการแนะนำคลาสและ API ที่เกี่ยวข้องใน Java 9 . เราสามารถใช้ ProcessHandle อินเทอร์เฟซและวิธีการที่เกี่ยวข้องเพื่อรับ pid และข้อมูลเกี่ยวกับกระบวนการอื่นๆ ที่เกี่ยวข้อง เราจำเป็นต้องรับโปรเซสลูกทั้งหมด จากนั้นใช้ java.lang.ProcessHandle.children() กระบวนการ. เมธอดนี้ส่งคืนสตรี
ใน Java 9 ประมวลผล API ถูกนำมาใช้เพื่อควบคุมและจัดการกระบวนการของระบบปฏิบัติการ ตัวจัดการกระบวนการ class จัดเตรียม กระบวนการ ดั้งเดิมของกระบวนการ รหัส , เริ่ม เวลา , สะสม ซีพียู เวลา , ข้อโต้แย้ง , คำสั่ง , ผู้ใช้ , ผู้ปกครอง กระบวนการ และ ทายาท . นอกจากนี้ยังมีวิธีการตรวจสอบกระบวนการ ความมีช
Java 9 ได้แนะนำ รีแอกทีฟสตรีม ภายใต้ java.util.concurrent.Flow แพ็คเกจที่รองรับ เผยแพร่-สมัครสมาชิก . ที่ทำงานร่วมกันได้ กรอบ. มันประมวลผลสตรีมข้อมูลแบบอะซิงโครนัสข้ามขอบเขตแบบอะซิงโครนัส (ส่งองค์ประกอบไปยังเธรดอื่นหรือเธรดพูล) และฝ่ายรับจะไม่ถูกบังคับให้บัฟเฟอร์ปริมาณข้อมูลตามอำเภอใจ ดังนั้นบัฟเฟอร
ตั้งแต่ Java 9 เราสามารถสร้าง R สตรีมเชิงโต้ตอบ โดยแนะนำอินเทอร์เฟซหลักสี่ส่วน:ผู้เผยแพร่ , สมาชิก , สมัครสมาชิก , โปรเซสเซอร์ และหนึ่งคลาสที่เป็นรูปธรรม:SubmissionPublisher ที่ใช้ ผู้เผยแพร่ อินเตอร์เฟซ. แต่ละอินเทอร์เฟซมีบทบาทที่แตกต่างกัน ซึ่งสอดคล้องกับหลักการของ ปฏิกิริยา สตรีม . เราสามารถใช
The delayedExecutor() เพิ่มเมธอดใน CompletableFuture . แล้ว คลาสใน Java 9 CompletableFuture กำหนดวิธีการโอเวอร์โหลดสองวิธีของ delayedExecutor() :วิธีแรกส่งคืนวัตถุ Executor จาก default ผู้ดำเนินการ วัตถุที่ อนาคตที่สมบูรณ์ ออบเจ็กต์ใช้เพื่อดำเนินงานหลังการหน่วงเวลาและ ตัวดำเนินการใหม่ วัตถุสามา
Java 9 กำหนด StackWalker API ที่ให้ความเกียจคร้านและการกรองเฟรม วัตถุของ StackWalker ช่วยให้เราสำรวจและเข้าถึงสแต็กได้ และมีวิธีการหนึ่งที่เป็นประโยชน์:เดิน() . เมธอดนี้เปิด StackFrame สตรีม สำหรับเธรดปัจจุบัน จากนั้นใช้ฟังก์ชันกับ StackFrame ลำธาร. เราต้องได้ StackWalker วัตถุ จากนั้นใช้ Sta
StackWalker API จัดเตรียมสตรีมข้อมูลในการติดตามสแต็กระหว่างการทำงานของโปรแกรม API นี้ต้องการ เครื่องเสมือน เพื่อจับภาพสแน็ปช็อตของสแตกทั้งหมดและส่งคืนอาร์เรย์ขององค์ประกอบเพื่อการกรอง เราจำเป็นต้องข้าม วาง และจำกัดเฟรมสแต็กโดยใช้ walk() กระบวนการ. นอกจากนี้เรายังสามารถกรองสแต็กเฟรมตามคลาสเพื่อรับเ