กลับไปหน้าบทความ

อ่าน 8 นาที

รายชื่อคำสำคัญของภาษา Java

ใน ภาษาการเขียนโปรแกรม Java คีย์เวิร์ด คือ คำ สงวน 68 คำ [ 1 ] ที่มีความหมายที่กำหนดไว้ล่วงหน้าในภาษา ด้วยเหตุนี้ โปรแกรมเมอร์จึงไม่สามารถใช้คีย์เวิร์ดในบางบริบท เช่น ชื่อ ตัวแปร...

รายชื่อคำสำคัญของภาษา Java

ตัวอย่างโค้ด Java ที่เน้นคำสำคัญด้วยสีน้ำเงินและตัวหนา

ในภาษาการเขียนโปรแกรม Javaคีย์เวิร์ด คือ คำสงวน 68 คำ [ 1 ]ที่มีความหมายที่กำหนดไว้ล่วงหน้าในภาษา ด้วยเหตุนี้ โปรแกรมเมอร์จึงไม่สามารถใช้คีย์เวิร์ดในบางบริบท เช่น ชื่อตัวแปรเมธอดคลาสหรือ เป็น ตัวระบุอื่นๆ[ 2 ] ในบรรดาคีย์เวิร์ด 68 คำนี้ มี 17 คำที่เป็นคำสงวนตามบริบทเท่านั้น และบางครั้งสามารถใช้เป็นตัวระบุได้ ซึ่งแตกต่างจากคำสงวนมาตรฐาน เนื่องจากหน้าที่พิเศษของคีย์เวิร์ดในภาษาสภาพแวดล้อมการพัฒนาแบบบูรณาการส่วนใหญ่สำหรับ Java จึงใช้การเน้นไวยากรณ์เพื่อแสดงคีย์เวิร์ดด้วยสีที่แตกต่างกันเพื่อให้ง่ายต่อการระบุ

คำสงวน

คำต่อไปนี้เป็นคำสงวนและไม่สามารถใช้เป็นคำระบุตัวตนได้ในทุกกรณี

abstract
เมธอดที่ไม่มีนิยามจะต้องประกาศเป็น abstract และคลาสที่บรรจุเมธอดนั้นก็ต้องประกาศเป็น abstract ด้วยเช่นกัน คลาส abstract ไม่สามารถสร้างอินสแตนซ์ได้ เมธอด abstract ต้องถูกเขียนโค้ดในคลาสย่อย คำว่า abstract ไม่สามารถใช้กับตัวแปรหรือคอนสตรัคเตอร์ได้ โปรดทราบว่าคลาส abstract ไม่จำเป็นต้องมีเมธอด abstract เสมอไป
assert(เพิ่มในJ2SE 1.4 ) [ 3 ]
`Assert` คือคำสั่งแสดงเงื่อนไข (ประโยคที่เป็นจริงหรือเท็จ) ที่วางไว้ในโปรแกรม Java เพื่อบ่งชี้ว่าผู้พัฒนาคิดว่าเงื่อนไขนั้นเป็นจริงเสมอ ณ ตำแหน่งนั้น หากเงื่อนไขใด ๆ ประเมินค่าเป็นเท็จในระหว่างการทำงานของโปรแกรม จะเกิดความล้มเหลวในการตรวจสอบเงื่อนไข ซึ่งโดยทั่วไปจะทำให้โปรแกรมหยุดทำงาน โดยค่าเริ่มต้น การตรวจสอบเงื่อนไขจะถูกปิดใช้งานในระหว่างการทำงานของโปรแกรม แต่สามารถเปิดใช้งานได้ผ่านตัวเลือกในบรรทัดคำสั่งหรือโดยทางโปรแกรมผ่านเมธอดในตัวโหลดคลาส
boolean
กำหนดค่าตัวแปรบูลีนสำหรับค่า "จริง" หรือ "เท็จ" เท่านั้น โดยค่าเริ่มต้น ค่าของชนิดข้อมูลบูลีนคือเท็จ คำหลักนี้ยังใช้เพื่อประกาศว่าเมธอดส่งคืนค่าของชนิดข้อมูลพื้นฐานนี้booleanในภาษาโปรแกรมส่วนใหญ่ ชนิดข้อมูลบูลีนมักเรียกว่า `true` boolเฉยๆ
break
ใช้เพื่อยุติการทำงานภายในลูปปัจจุบัน
ใช้เพื่อปลดล็อกswitchสิ่งที่ติดขัด
byte
คีย์เวิร์ด นี้byteใช้เพื่อประกาศฟิลด์ที่สามารถเก็บจำนวนเต็มสองบิตแบบ มีเครื่องหมาย 8 บิตได้ [ 4 ] [ 5 ]คีย์เวิร์ดนี้ยังใช้เพื่อประกาศว่าเมธอดส่งคืนค่าของประเภทbyteพื้นฐาน[ 6 ] [ 7 ]
case
คำสั่งในswitchบล็อกสามารถติดป้ายกำกับได้หนึ่งป้ายหรือมากกว่าcaseคำdefaultสั่งswitchจะประเมินนิพจน์ จากนั้นดำเนินการคำสั่งทั้งหมดที่ตามหลังcaseป้ายกำกับ ที่ตรงกัน switchดู[ 8 ] [ 9 ]
catch
ใช้ร่วมกับtryบล็อกหลักและfinallyบล็อกเสริม คำสั่งใน บล็อกเสริมจะระบุว่าควรทำอย่างไรหาก บล็อกcatchนั้นโยนข้อยกเว้นประเภทใดประเภทหนึ่งออกมาtry
char
กำหนดตัวแปรอักขระที่สามารถเก็บอักขระใดๆ ก็ได้จากชุดอักขระของไฟล์ซอร์สโค้ด Java
class
คลาสคือประเภทที่กำหนดการใช้งานของวัตถุชนิดใดชนิดหนึ่ง คำจำกัดความของคลาสจะกำหนดฟิลด์ของอินสแตนซ์และคลาส เมธอดและคลาสภายในรวมถึงระบุอินเทอร์เฟซที่คลาสใช้งานและซูเปอร์คลาส โดยตรง ของคลาส หากไม่ได้ระบุซูเปอร์คลาสอย่างชัดเจน ซูเปอร์คลาสจะถูกกำหนดโดยปริยายคำหลัก `class` สามารถใช้ในรูปแบบ`get object` เพื่อรับวัตถุโดยไม่ต้องมีอินสแตนซ์ของคลาสนั้น ตัวอย่างเช่น ` get object` สามารถใช้แทน `get object` ได้ObjectClass.classClassString.classnewString().getClass()
continue
ใช้เพื่อเริ่มการทำงานของโปรแกรมต่อจากจุดสิ้นสุดของลูปปัจจุบัน หากตามด้วยป้ายกำกับcontinueจะเริ่มการทำงานต่อจากจุดสิ้นสุดของลูปที่มีป้ายกำกับนั้น
default
คำdefaultหลักสามารถใช้ในคำสั่ง switchเพื่อระบุบล็อกของคำสั่งที่จะดำเนินการหากไม่มีcaseค่าใดตรงกับค่าที่ระบุ ดูswitch[ 8 ] [ 9 ] หรืออีกทางหนึ่งdefaultคำหลักยังสามารถใช้เพื่อประกาศค่าเริ่มต้นในคำอธิบายประกอบ Java ได้ อีกด้วย ตั้งแต่ Java 8 เป็นต้นไปdefaultคำหลักสามารถใช้เพื่ออนุญาตให้อินเทอร์เฟซจัดเตรียมการใช้งานของเมธอดได้
do
คำหลัก นี้doใช้ร่วมกับwhileเพื่อสร้างลูป do-whileซึ่งจะดำเนินการบล็อกคำสั่งที่เกี่ยวข้องกับลูป จากนั้นทดสอบนิพจน์บูลีนที่เกี่ยวข้องกับwhileหากนิพจน์ประเมินค่าเป็น true trueบล็อกจะถูกดำเนินการอีกครั้ง และจะดำเนินต่อไปจนกว่านิพจน์จะประเมินค่าเป็นfalsefalse [ 10 ] [ 11 ]
double
คีย์เวิร์ดนี้doubleใช้สำหรับประกาศตัวแปรที่สามารถเก็บเลขทศลอย IEEE 754 ความแม่นยำสองเท่า 64 บิตได้[ 4 ] [ 5 ] คีย์เวิร์ดนี้ยังใช้สำหรับประกาศว่าเมธอดจะส่งคืนค่าของประเภทพื้นฐาน[ 6 ] [ 7 ]double
else
คำelseหลักนี้ใช้ร่วมกับifเพื่อสร้างคำสั่ง if-elseซึ่งทดสอบนิพจน์บูลีนหากนิพจน์ประเมินค่าเป็น true trueบล็อกคำสั่งที่เกี่ยวข้องกับ true ifจะถูกประเมินค่า หากนิพจน์ประเมินค่าเป็น false falseบล็อกคำสั่งที่เกี่ยวข้องกับ false elseจะถูกประเมินค่า[ 12 ] [ 13 ]
enum(เพิ่มในJ2SE 5.0 ) [ 3 ]
คำสำคัญในภาษา Java ใช้สำหรับประกาศชนิดข้อมูลแบบแจงนับ (enumerated type ) ชนิดข้อมูลแบบแจงนับจะสืบทอดมาจากคลาสEnumพื้นฐาน
extends
ใช้ในการประกาศคลาสเพื่อระบุคลาสแม่ (superclass) และใช้ในการประกาศอินเทอร์เฟซเพื่อระบุอินเทอร์เฟซแม่ (superinterface) อย่างน้อยหนึ่งรายการ คลาส X ขยายคลาส Y เพื่อเพิ่มฟังก์ชันการทำงาน โดยการเพิ่มฟิลด์หรือเมธอดให้กับคลาส Y หรือโดยการเขียนทับเมธอดของคลาส Y อินเทอร์เฟซ Z ขยายอินเทอร์เฟซอย่างน้อยหนึ่งรายการโดยการเพิ่มเมธอด คลาส X กล่าวได้ว่าเป็นคลาสย่อยของคลาส Y และอินเทอร์เฟซ Z กล่าวได้ว่าเป็นอินเทอร์เฟซย่อยของอินเทอร์เฟซที่มันขยาย
นอกจากนี้ยังใช้เพื่อระบุขอบเขตบนของพารามิเตอร์ประเภทใน Generics ด้วย
final
กำหนดเอนทิตีเพียงครั้งเดียวที่ไม่สามารถเปลี่ยนแปลงหรือสืบทอดได้ในภายหลัง กล่าวคือ คลาสที่เป็น final ไม่สามารถสร้างคลาสย่อยได้ เมธอดที่เป็น final ไม่สามารถเขียนทับได้ และตัวแปรที่เป็น final สามารถปรากฏได้มากที่สุดเพียงครั้งเดียวในฐานะนิพจน์ด้านซ้ายของคำสั่งที่ถูกดำเนินการ เมธอดทั้งหมดในคลาสที่เป็น final นั้นเป็นแบบ implicitly final.
finally
ใช้เพื่อกำหนดกลุ่มคำสั่งสำหรับบล็อกที่กำหนดไว้ก่อนหน้านี้โดยtryคีย์เวิร์ด กลุ่มคำสั่งนี้finallyจะถูกดำเนินการหลังจากที่การดำเนินการออกจากtryบล็อกและcatchข้อความที่เกี่ยวข้องทั้งหมด ไม่ว่าจะมีข้อยกเว้นเกิดขึ้นหรือไม่ หรือการดำเนินการออกจากเมธอดในระหว่างtryบล็อกcatchโดยใช้returnคีย์เวิร์ดก็ตาม
float
คีย์เวิร์ดนี้floatใช้สำหรับประกาศตัวแปรที่สามารถเก็บเลขทศลอย IEEE 754 ความแม่นยำเดี่ยว 32 บิตได้ [ 4 ] [ 5 ]คีย์เวิร์ดนี้ยังใช้สำหรับประกาศว่าเมธอดจะส่งคืนค่าของประเภทfloatพื้นฐาน[ 6 ] [ 7 ]
for
คำหลัก นี้forใช้เพื่อสร้างลูป forซึ่งระบุการเริ่มต้นตัวแปรนิพจน์บูลีนและการเพิ่มค่า การเริ่มต้นตัวแปรจะดำเนินการก่อน จากนั้นจึงประเมินนิพจน์บูลีน หากนิพจน์ประเมินค่าเป็น true trueบล็อกคำสั่งที่เกี่ยวข้องกับลูปจะถูกดำเนินการ จากนั้นจึงทำการเพิ่มค่า นิพจน์บูลีนจะถูกประเมินอีกครั้ง กระบวนการนี้จะดำเนินต่อไปจนกว่านิพจน์จะประเมินค่าเป็นfalsefalse [ 14 ]
ตั้งแต่J2SE 5.0 เป็นต้นไป คำหลัก นี้forยังสามารถใช้เพื่อสร้างสิ่งที่เรียกว่า " ลูป for ที่ได้รับการปรับปรุง " [ 15 ]ซึ่งระบุอาร์เรย์หรือIterableออบเจ็กต์ การวนซ้ำแต่ละครั้งของลูปจะดำเนินการบล็อกคำสั่งที่เกี่ยวข้องโดยใช้องค์ประกอบที่แตกต่างกันในอาร์เรย์หรือออบIterableเจ็กต์[ 14 ]
if
คำหลัก นี้ifใช้เพื่อสร้างคำสั่ง ifซึ่งทดสอบนิพจน์บูลีนหากนิพจน์ประเมินค่าเป็นจริงtrueบล็อกคำสั่งที่เกี่ยวข้องกับคำสั่ง if จะถูกดำเนินการ คำหลักนี้ยังสามารถใช้เพื่อสร้างคำสั่ง if-else ได้else อีก ด้วยดู[ 12 ] [ 13 ]
implements
อินเทอร์เฟซจะถูกรวมไว้ในการประกาศคลาสเพื่อระบุอิน เทอร์เฟซอย่างน้อยหนึ่ง รายการ ที่คลาสปัจจุบันนำไปใช้งาน คลาสจะสืบทอดประเภทและเมธอดนามธรรมที่ประกาศโดยอินเทอร์เฟซเหล่านั้น
import
ใช้ที่จุดเริ่มต้นของไฟล์ต้นฉบับเพื่อระบุคลาสหรือแพ็กเกจ Java ทั้งหมด ที่จะอ้างอิงในภายหลังโดยไม่ต้องรวมชื่อแพ็กเกจไว้ในการอ้างอิง ตั้งแต่ J2SE 5.0 เป็นต้นไปimportคำสั่งสามารถนำเข้าstaticสมาชิกของคลาสได้โมดูล Javaเองอาจถูกนำเข้า (โดยการเขียนimport module) ซึ่งจะนำเข้าแพ็กเกจที่ส่งออกทั้งหมดโดยอัตโนมัติ[ 16 ]
instanceof
ตัวดำเนินการไบนารีที่รับการอ้างอิงวัตถุเป็นตัวถูกดำเนินการตัวแรก และคลาสหรืออินเทอร์เฟซเป็นตัวถูกดำเนินการตัวที่สอง และให้ผลลัพธ์เป็นค่าบูลีนinstanceofตัวดำเนินการนี้จะประเมินค่าเป็นจริงก็ต่อเมื่อชนิดข้อมูลขณะรันไทม์ของวัตถุเข้ากันได้กับการกำหนดค่าของคลาสหรืออินเทอร์เฟซเท่านั้น
int
คำหลัก นี้intใช้เพื่อประกาศตัวแปรที่สามารถเก็บจำนวนเต็มสองส่วนเสริมแบบมีเครื่องหมาย 32 บิตได้[ 4 ] [ 5 ]คำหลักนี้ยังใช้เพื่อประกาศว่าเมธอดส่งคืนค่าของประเภทintพื้นฐาน[ 6 ] [ 7 ]
interface
ใช้สำหรับประกาศอินเทอร์เฟซที่ประกอบด้วยเมธอดนามธรรมหรือเมธอดเริ่มต้นstatic finalฟิลด์คงที่ (constant) และstaticอินเทอร์เฟซเท่านั้น ต่อมาคลาสต่างๆ สามารถนำไปใช้งานอินเทอร์เฟซนี้ได้โดยการประกาศอินเทอร์เฟซด้วยimplementsคีย์เวิร์ด `require` เนื่องจาก Java ไม่อนุญาตให้มี การสืบทอดแบบหลายทาง อินเทอร์เฟซจึงถูกใช้เพื่อหลีกเลี่ยงข้อจำกัดนี้ อินเทอร์เฟซหนึ่งสามารถถูกกำหนดไว้ภายในอินเทอร์เฟซอื่นได้
long
คำหลัก นี้longใช้เพื่อประกาศตัวแปรที่สามารถเก็บจำนวนเต็มสองส่วนเสริมแบบมีเครื่องหมาย 64 บิตได้[ 4 ] [ 5 ]คำหลักนี้ยังใช้เพื่อประกาศว่าเมธอดส่งคืนค่าของประเภทlongพื้นฐาน[ 6 ] [ 7 ]
native
ใช้ในการประกาศเมธอดเพื่อระบุว่าเมธอดนั้นไม่ได้ถูกนำไปใช้ในไฟล์ซอร์สโค้ด Java เดียวกัน แต่ถูกนำไปใช้ในภาษาอื่น[ 7 ]
new
ใช้เพื่อสร้างอินสแตนซ์ของคลาสหรืออาร์เรย์ออบเจ็กต์ การใช้คีย์เวิร์ดเพื่อจุดประสงค์นี้ไม่จำเป็นเสมอไป (ดังตัวอย่างในScala ) แม้ว่าจะมีประโยชน์สองประการคือ ช่วยให้สามารถมีเนมสเปซที่แตกต่างกันสำหรับเมธอดและชื่อคลาส และกำหนดแบบคงที่และเฉพาะที่ว่ามีการสร้างออบเจ็กต์ใหม่จริง ๆ และเป็นประเภทรันไทม์ใด (ซึ่งอาจเพิ่มการพึ่งพาเข้าไปในโค้ด)
package
แพ็กเกจในภาษา Java คือกลุ่มของคลาสและอินเทอร์เฟซที่คล้ายคลึงกัน แพ็กเกจจะถูกประกาศโดยใช้packageคีย์เวิร์ด ` package`
private
คีย์เวิร์ดนี้privateใช้ในการประกาศเมธอด ฟิลด์ หรือคลาสภายใน สมาชิกส่วนตัวสามารถเข้าถึงได้โดยสมาชิกอื่น ๆ ของคลาสเดียวกันเท่านั้น[ 17 ]
protected
คีย์เวิร์ดนี้protectedใช้ในการประกาศเมธอด ฟิลด์ หรือคลาสภายใน สมาชิกที่ได้รับการป้องกันสามารถเข้าถึงได้โดยสมาชิกของคลาสเดียวกันคลาสย่อย ของคลาสนั้น หรือคลาสจากแพ็กเกจ เดียวกันเท่านั้น [ 17 ]
public
คีย์เวิร์ด นี้publicใช้ในการประกาศคลาส เมธอด หรือฟิลด์ คลาส เมธอด และฟิลด์สาธารณะสามารถเข้าถึงได้โดยสมาชิกของคลาสใดก็ได้[ 17 ]
return
ใช้เพื่อสิ้นสุดการทำงานของเมธอด โดยอาจตามด้วยค่าที่จำเป็นตามคำนิยามของเมธอด ซึ่งจะถูกส่งกลับไปยังผู้เรียกใช้
short
คีย์เวิร์ด นี้shortใช้เพื่อประกาศฟิลด์ที่สามารถเก็บจำนวนเต็มสองส่วนเสริมแบบมีเครื่องหมาย 16 บิตได้[ 4 ] [ 5 ]คีย์เวิร์ดนี้ยังใช้เพื่อประกาศว่าเมธอดส่งคืนค่าของประเภทshortพื้นฐาน[ 6 ] [ 7 ]
static
ใช้เพื่อประกาศฟิลด์ เมธอด หรือคลาสภายในเป็นฟิลด์ของคลาส คลาสจะเก็บสำเนาฟิลด์ของคลาสไว้หนึ่งชุดโดยไม่คำนึงถึงจำนวนอินสแตนซ์ของคลาสนั้นstaticนอกจากนี้ยังใช้เพื่อกำหนดเมธอดเป็นเมธอดของคลาส เมธอดของคลาสจะผูกกับคลาสแทนที่จะเป็นอินสแตนซ์เฉพาะ และสามารถดำเนินการกับฟิลด์ของคลาสเท่านั้น คลาสและอินเทอร์เฟซที่ประกาศเป็นstaticสมาชิกของคลาสหรืออินเทอร์เฟซอื่นจะมีพฤติกรรมเป็นคลาสระดับบนสุด[ 18 ]
super
โดยพื้นฐานแล้ว การสืบทอดใช้เพื่อบรรลุการผูกมัดแบบไดนามิกหรือโพลีมอร์ฟิซึมในขณะทำงานในภาษา Java ใช้เพื่อเข้าถึงสมาชิกของคลาสที่สืบทอดโดยคลาสที่ปรากฏอยู่ ช่วยให้คลาสย่อยสามารถเข้าถึง เมธอด ที่ถูกเขียนทับและสมาชิกที่ซ่อนอยู่ของคลาสแม่ได้superคำหลักนี้ยังใช้เพื่อส่งต่อการเรียกจากคอนสตรัคเตอร์ไปยังคอนสตรัคเตอร์ในคลาสแม่ด้วย
นอกจากนี้ยังใช้เพื่อระบุขอบเขตล่างของพารามิเตอร์ประเภทใน Generics ด้วย
switch
คำหลัก นี้switchใช้ร่วมกับcaseและdefaultเพื่อสร้างคำสั่ง switchซึ่งจะประเมินตัวแปร จับคู่ค่าของตัวแปรกับค่าเฉพาะcase(รวมถึงรูปแบบ ) และดำเนินการบล็อกคำสั่งที่เกี่ยวข้องกับค่า ดังกล่าว caseหากไม่มีcaseค่าใดตรงกับค่าที่กำหนด บล็อกเสริมที่มีป้ายกำกับโดยdefaultจะถูกดำเนินการหากมีอยู่[ 8 ] [ 9 ]คำหลัก switch ยังสามารถใช้ร่วมกับคำหลักที่ไม่สงวนไว้yieldเพื่อสร้างนิพจน์ switch ได้ อีกด้วย
synchronized
ใช้ในการประกาศเมธอดหรือบล็อกโค้ดเพื่อรับ ล็อก มิวเท็กซ์สำหรับวัตถุในขณะที่เธรด ปัจจุบัน กำลังดำเนินการโค้ด[ 7 ]สำหรับเมธอดแบบสแตติก วัตถุที่ถูกล็อกคือคลาสClassรับประกันว่าจะมีเธรดเพียงเธรดเดียวเท่านั้นที่ทำงานกับวัตถุเดียวกันในเวลาเดียวกันเพื่อดำเนินการโค้ดนั้น ล็อกมิวเท็กซ์จะถูกปล่อยโดยอัตโนมัติเมื่อการดำเนินการออกจากโค้ดที่ซิงโครไนซ์ ฟิลด์ คลาส และอินเทอร์เฟซไม่สามารถประกาศเป็นซิงโครไนซ์ได้
this
ใช้เพื่อแสดงถึงอินสแตนซ์ของคลาสที่ปรากฏอยู่thisสามารถใช้เพื่อเข้าถึงสมาชิกของคลาสและเป็นตัวอ้างอิงถึงอินสแตนซ์ปัจจุบันthisคำหลักนี้ยังใช้เพื่อส่งต่อการเรียกจากคอนสตรัคเตอร์หนึ่งในคลาสไปยังคอนสตรัคเตอร์อื่นในคลาสเดียวกันด้วย
throw
ทำให้เกิดการโยนอินสแตนซ์ข้อยกเว้นที่ประกาศไว้ ซึ่งจะทำให้การทำงานดำเนินต่อไปด้วยตัวจัดการข้อยกเว้นตัวแรกที่ประกาศโดยcatchคีย์เวิร์ดเพื่อจัดการประเภทข้อยกเว้นที่เข้ากันได้กับการกำหนดค่า หากไม่พบตัวจัดการข้อยกเว้นดังกล่าวในเมธอดปัจจุบัน เมธอดจะส่งคืนค่าและกระบวนการจะถูกทำซ้ำในเมธอดที่เรียก หากไม่พบตัวจัดการข้อยกเว้นในการเรียกเมธอดใดๆ บนสแต็ก ข้อยกเว้นจะถูกส่งต่อไปยังตัวจัดการข้อยกเว้นที่ไม่ได้ถูกดักจับของเธรด
throws
ใช้ในการประกาศเมธอดเพื่อระบุว่าข้อยกเว้นใดบ้างที่ไม่ได้รับการจัดการภายในเมธอด แต่จะถูกส่งต่อไปยังระดับที่สูงกว่าของโปรแกรม ข้อยกเว้นที่ไม่ได้ถูกจัดการทั้งหมดในเมธอด (ที่สืบทอดมาExceptionแต่ไม่ใช่เมธอดRuntimeException) จะต้องประกาศโดยใช้throwsคีย์เวิร์ด
transient
ประกาศว่าฟิลด์อินสแตนซ์ไม่ได้เป็นส่วนหนึ่งของ รูปแบบ ซีเรียลไลซ์ เริ่มต้น ของวัตถุ เมื่อวัตถุถูกซีเรียลไลซ์ เฉพาะค่าของฟิลด์อินสแตนซ์ที่ไม่ใช่แบบชั่วคราวเท่านั้นที่จะรวมอยู่ในรูปแบบซีเรียลไลซ์เริ่มต้น เมื่อวัตถุถูกดีซีเรียลไลซ์ ฟิลด์แบบชั่วคราวจะถูกเริ่มต้นด้วยค่าเริ่มต้นเท่านั้น หากไม่ได้ใช้รูปแบบเริ่มต้น เช่น เมื่อ มีการประกาศตาราง serialPersistentFieldsในลำดับชั้นของคลาสtransientคำหลักทั้งหมดจะถูกละเว้น[ 19 ] [ 20 ]
try
กำหนดกลุ่มคำสั่งที่มีการจัดการข้อยกเว้น หากเกิดข้อยกเว้นภายในtryกลุ่มคำสั่งนั้น กลุ่มคำสั่งเสริมcatchสามารถจัดการประเภทข้อยกเว้นที่ประกาศไว้ได้ นอกจากนี้ ยังfinallyสามารถประกาศกลุ่มคำสั่งเสริมที่จะถูกเรียกใช้เมื่อการทำงานออกจากtryกลุ่มคำสั่งและcatchส่วนย่อย โดยไม่คำนึงว่าจะมีข้อยกเว้นเกิดขึ้นหรือไม่tryกลุ่มคำสั่งต้องมีอย่างน้อยหนึ่งcatchส่วนย่อยหรือfinallyกลุ่มคำสั่ง
void
คีย์เวิร์ด นี้voidใช้เพื่อประกาศว่าเมธอดจะไม่ส่งคืนค่าใดๆ[ 6 ]
volatile
ใช้ในการประกาศฟิลด์เพื่อรับประกันการมองเห็นการเปลี่ยนแปลงของตัวแปรข้ามเธรด การอ่านตัวแปร volatile ทุกครั้งจะถูกอ่านจากหน่วยความจำหลัก ไม่ใช่จากแคช CPUและการเขียนตัวแปร volatile ทุกครั้งจะถูกเขียนไปยังหน่วยความจำหลัก ไม่ใช่แค่แคช CPU [ 21 ]ดังนั้น เมธอด คลาส และอินเทอร์เฟซจึงไม่สามารถประกาศเป็นvolatile ได้เช่นเดียวกับตัวแปรโลคอลหรือพารามิเตอร์
while
คำwhileหลักนี้ใช้เพื่อสร้างลูป whileซึ่งจะทดสอบนิพจน์บูลีนและดำเนินการบล็อกคำสั่งที่เกี่ยวข้องกับลูปหากนิพจน์ประเมินค่าเป็นจริงtrueซึ่งจะดำเนินต่อไปจนกว่านิพจน์จะประเมินค่าเป็นfalseเท็จ คำหลักนี้ยังสามารถใช้เพื่อสร้างลูป do-while ได้do อีก ด้วยดู[ 10 ] [ 11 ]

ยังไม่ได้ใช้งาน

คำต่อไปนี้ถูกสงวนไว้เป็นคำหลัก แต่ปัจจุบันยังไม่มีประโยชน์หรือวัตถุประสงค์ใดๆ

_
เครื่องหมายขีดล่างที่เพิ่มเข้ามาใน Java 9 ได้กลายเป็นคำสำคัญและไม่สามารถใช้เป็นชื่อตัวแปรได้อีกต่อไป[ 22 ]
const
แม้ว่าจะถูกสงวนไว้เป็นคำหลักใน Java แต่constก็ไม่ได้ถูกใช้และไม่มีฟังก์ชัน[ 2 ] [ 23 ]ในภาษาอื่นๆconstมักใช้เพื่อกำหนดค่าคงที่ สำหรับการกำหนดค่าคงที่ใน Java โปรดดูfinalคำหลัก
goto
แม้ว่าจะถูกสงวนไว้เป็นคำหลักใน Java แต่gotoก็ไม่ได้ถูกใช้และไม่มีฟังก์ชัน[ 2 ] [ 23 ]ในภาษาอื่นๆgotoมักใช้เป็นคำสั่งควบคุมทางเดียวเพื่อกระโดดไปยังป้ายกำกับที่บรรทัดโค้ดอื่น
strictfp(เพิ่มในJ2SE 1.2 ) [ 3 ]
แม้ว่าจะถูกสงวนไว้เป็นคำหลักใน Java strictfpแต่ก็ล้าสมัยและไม่มีฟังก์ชันใด ๆ อีกต่อไป[ 24 ]ก่อนหน้านี้คำหลักนี้ถูกใช้เพื่อจำกัดความแม่นยำและการปัดเศษของการคำนวณจุดลอยตัวเพื่อให้มั่นใจถึงความสามารถในการพกพา[ 7 ]

คำหลักตามบริบท

คำระบุต่อไปนี้เป็นคำหลักตามบริบท และจะถูกจำกัดการใช้งานเฉพาะในบางบริบทเท่านั้น:

exports
ใช้ในการประกาศโมดูลเพื่อระบุว่าแพ็กเกจใดบ้างที่โมดูลอื่นสามารถใช้งานได้
module
ประกาศโมดูล (กลุ่มของแพ็กเกจและทรัพยากรที่เกี่ยวข้องซึ่งสามารถถือได้ว่าเป็นหน่วยเดียวกัน) ซึ่งใช้เพื่อห่อหุ้มและเปิดเผยเฉพาะ API สาธารณะของไลบรารีเท่านั้น
non-sealed
ใช้เพื่อประกาศว่าคลาสหรืออินเทอร์เฟซที่ขยายคลาสที่ปิดผนึกสามารถขยายได้โดยคลาสที่ไม่รู้จัก[ 25 ]
open
ระบุว่าคลาสทั้งหมดในแพ็กเกจสามารถเข้าถึงได้ผ่านทาง Reflection โดยโมดูลอื่นๆ
opens
ใช้สำหรับเปิดแพ็กเกจเฉพาะเพื่อนำไปแสดงผลในโมดูลอื่นๆ
permits
ข้อกำหนดการอนุญาตระบุคลาสที่ได้รับอนุญาตให้ขยายคลาสที่ปิดผนึก[ 25 ]
provides
ใช้เพื่อประกาศว่าโมดูลนั้นมีการใช้งานอินเทอร์เฟซบริการ
record
คลาสชนิดพิเศษที่ทำหน้าที่เป็นตัวกลางโปร่งใสในการส่งข้อมูลที่ไม่สามารถเปลี่ยนแปลงได้ โดยจะจัดเตรียมเมธอด.equals(), .hashCode(), และ.toString()โดย อัตโนมัติ
requires
ใช้ในการประกาศโมดูลเพื่อระบุว่าโมดูลนั้นขึ้นอยู่กับโมดูลอื่น
sealed
คลาสหรืออินเทอร์เฟซที่ปิดผนึกสามารถขยายหรือใช้งานได้เฉพาะโดยคลาสและอินเทอร์เฟซที่ได้รับอนุญาตให้ทำเช่นนั้นเท่านั้น[ 25 ]
to
ใช้ร่วมกับopensคำสั่งเพื่อระบุว่าโมดูลใดได้รับอนุญาตให้เข้าถึงแพ็กเกจแบบสะท้อนกลับได้
transitive
ใช้ร่วมกับrequiresคำสั่งเพื่อระบุว่าโมดูลหนึ่งไม่เพียงแต่ต้องการโมดูลอื่นเท่านั้น แต่ยังทำให้โมดูลที่ขึ้นกับโมดูลนั้นสามารถเข้าถึงส่วนประกอบที่จำเป็นของโมดูลดังกล่าวได้ด้วย
uses
ใช้ในโมดูลเพื่อประกาศว่าโมดูลนั้นกำลังใช้บริการ (กล่าวคือ จะใช้บริการที่จัดหาโดยโมดูลอื่น)
var
ตัวระบุพิเศษที่ไม่สามารถใช้เป็นชื่อประเภทได้ (ตั้งแต่ Java 10) [ 26 ]ใช้เพื่อประกาศตัวแปรโดยไม่ต้องระบุประเภทอย่างชัดเจน แต่ใช้คอมไพเลอร์ในการอนุมานประเภทตามตัวเริ่มต้น
when
ใช้เป็นการตรวจสอบเพิ่มเติมสำหรับcaseคำแถลง[ 27 ]
with
ใช้ร่วมกับprovidesคำสั่งเพื่อระบุว่าโมดูลนั้นให้บริการการใช้งานแบบใด
yield
ใช้เพื่อกำหนดค่าสำหรับนิพจน์สวิตช์เมื่อใช้กลุ่มคำสั่งที่มีป้ายกำกับ (ตัวอย่างเช่นcase L:) [ 28 ]

คำสงวนสำหรับค่าตามตัวอักษร

คำต่อไปนี้หมายถึงความหมายตามตัวอักษรที่ใช้ในภาษา

true
ค่าตัวอักษรบูลีน
false
ค่าตัวอักษรบูลีน
null
ค่าตัวอักษรอ้างอิง

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=List_of_Java_keywords&oldid=1356997619 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ รายชื่อคำสำคัญของภาษา Java

ใน ภาษาการเขียนโปรแกรม Java คีย์เวิร์ด คือ คำ สงวน 68 คำ [ 1 ] ที่มีความหมายที่กำหนดไว้ล่วงหน้าในภาษา ด้วยเหตุนี้ โปรแกรมเมอร์จึงไม่สามารถใช้คีย์เวิร์ดในบางบริบท เช่น ชื่อ ตัวแปร...

คำสงวน

คำต่อไปนี้เป็นคำสงวนและไม่สามารถใช้เป็นคำระบุตัวตนได้ในทุกกรณี

ยังไม่ได้ใช้งาน

คำต่อไปนี้ถูกสงวนไว้เป็นคำหลัก แต่ปัจจุบันยังไม่มีประโยชน์หรือวัตถุประสงค์ใดๆ

คำหลักตามบริบท

คำระบุต่อไปนี้เป็นคำหลักตามบริบท และจะถูกจำกัดการใช้งานเฉพาะในบางบริบทเท่านั้น: