Java เป็นผู้สนับสนุนโดเมนการพัฒนาซอฟต์แวร์ตลอดกาล ไม่เพียงแต่จำเป็นต้องเรียนรู้และฝึกฝนทักษะ Java เท่านั้น แต่ยังต้องฝึกฝนทักษะเหล่านี้แบบเรียลไทม์ด้วย ในบทความนี้ เราขอนำเสนอคำถามสัมภาษณ์ Java ที่เป็นที่ต้องการตัวมากที่สุด ซึ่งจะช่วยให้คุณบรรลุขั้นตอนการสัมภาษณ์ที่สำคัญ และช่วยทดสอบทักษะและความรู้ของคุณอย่างครบถ้วน
หากคุณต้องการดำน้ำลึกเพิ่มเติมลองดูที่ .ของเรา หลักสูตรวิศวกรรมซอฟต์แวร์ ที่ Great Learning ร่วมกับวิทยาลัยวิศวกรรมศาสตร์และมหาวิทยาลัยชั้นนำ รวมถึง IIT Madras, Great Lakes, Jain University และ IIIT Hyderabad. เข้าร่วมการจัดงานอย่างสม่ำเสมอ โปรแกรมเร่งอาชีพ และ ไดรฟ์ตำแหน่ง นำเสนอโดย Great Learning และได้รับการว่าจ้างจากบริษัทชั้นนำในอุตสาหกรรมต่างๆ
คำถามสัมภาษณ์ Java สำหรับนักศึกษาใหม่
1. Java คืออะไร
Java เป็นภาษาการเขียนโปรแกรมเอนกประสงค์ที่อิงตามคลาส เชิงวัตถุ และเป็นที่นิยมอย่างมาก เป็นหนึ่งในภาษาโปรแกรมที่ได้รับความนิยมมากที่สุดในโลก
สวัสดีชาวโลกใน Java:
public class FileName { public static void main(String args[]) { System.out.println("Hello World!"); } }
2. วิธีการติดตั้งจาวา?
ติดตั้ง Java ผ่านพรอมต์คำสั่งเพื่อสร้างไฟล์บันทึกที่จำเป็นเพื่อแก้ไขปัญหา
ไปที่ java.com และคลิกที่ปุ่มดาวน์โหลดฟรี Java
คลิกที่ปุ่มบันทึกและบันทึกซอฟต์แวร์ Java บนเดสก์ท็อป
ตรวจสอบว่าซอฟต์แวร์ Java ถูกบันทึกบนเดสก์ท็อป
เปิดหน้าต่างพรอมต์คำสั่งของ Windows
Windows XP: คลิกเริ่ม -> เรียกใช้ -> พิมพ์: cmd
Windows Vista และ Windows 7: คลิก Start -> Type: cmd ในช่อง Start Search
ซีดี (เช่น ดาวน์โหลดหรือเดสก์ท็อป เป็นต้น)
IRun โปรแกรมติดตั้งและปฏิบัติตามคำแนะนำบนหน้าจอ
3. จะย้อนกลับสตริงใน Java ได้อย่างไร?
"String str = ""Hello"";
String reverse(String str){ StringBuilder sb = new StringBuilder(); sb.append(str); sb.reverse(); return sb.toString();
}"
4. เธรดใน Java คืออะไร
เธรดช่วยให้โปรแกรมทำงานได้อย่างมีประสิทธิภาพมากขึ้นด้วยการทำหลายๆ อย่างพร้อมกัน
สามารถใช้เธรดเพื่อทำงานที่ซับซ้อนในพื้นหลังโดยไม่ขัดจังหวะโปรแกรมหลัก
สามารถสร้างได้โดยการขยายคลาสเธรดและแทนที่เมธอด run() ของมัน:
ขยายไวยากรณ์
public class MyClass extends Thread { public void run() { System.out.println("This code is running in a thread"); } }
5. จะรับอินพุตใน Java ได้อย่างไร
"Scanner in = new Scanner(System.in); System.out.print(""Please enter hour 1: ""); int hour1 = in.nextInt(); System.out.print(""Please enter hour 2: ""); int hour2 = in.nextInt(); System.out.print(""Please enter minute 1: ""); int min1 = in.nextInt(); System.out.print(""Please enter minute 2: ""); int min2 = in.nextInt();"
6. จะกำหนดเส้นทางใน Java ได้อย่างไร?
Windows 10 และ Windows 8
- ในการค้นหา ค้นหาแล้วเลือก: ระบบ (แผงควบคุม)
- คลิกลิงก์การตั้งค่าระบบขั้นสูง
- คลิกตัวแปรสภาพแวดล้อม ในส่วน ตัวแปรระบบ ค้นหาตัวแปรสภาพแวดล้อม PATH และเลือก คลิกแก้ไข หากไม่มีตัวแปรสภาพแวดล้อม PATH ให้คลิกใหม่
- ในหน้าต่าง Edit System Variable (หรือ New System Variable) ให้ระบุค่าของตัวแปรสภาพแวดล้อม PATH คลิกตกลง ปิดหน้าต่างที่เหลือทั้งหมดโดยคลิกตกลง
- เปิดหน้าต่างพรอมต์คำสั่งอีกครั้ง และเรียกใช้โค้ดจาวาของคุณ
Mac OS X
ในการรัน Java เวอร์ชันอื่น ให้ระบุพาธแบบเต็มหรือใช้เครื่องมือ java_home:
% /usr/libexec/java_home -v 1.8.0_73 –exec javac -รุ่น
Solaris และ Linux
หากต้องการทราบว่าเส้นทางถูกตั้งค่าอย่างถูกต้องหรือไม่:
ในหน้าต่างเทอร์มินัล ให้ป้อน:
% จาวา - เวอร์ชัน
การดำเนินการนี้จะพิมพ์เวอร์ชันของเครื่องมือ java หากหาพบ หากเวอร์ชันเก่าหรือคุณได้รับข้อผิดพลาด java: ไม่พบคำสั่ง แสดงว่าไม่ได้ตั้งค่าพาธอย่างถูกต้อง
ตรวจสอบว่า java ปฏิบัติการใดเป็นอันแรกที่พบใน PATH . ของคุณ
ในหน้าต่างเทอร์มินัล ให้ป้อน:
% ซึ่ง java
7. การแจงนับใน Java คืออะไร?
การแจงนับหมายถึงรายการค่าคงที่ที่มีชื่อ ใน Java การแจงนับกำหนดประเภทคลาส การแจงนับสามารถมีตัวสร้าง เมธอด และตัวแปรอินสแตนซ์ได้ มันถูกสร้างขึ้นโดยใช้คีย์เวิร์ด enum ค่าคงที่การแจงนับแต่ละรายการเป็นแบบสาธารณะ สแตติก และค่าสุดท้ายโดยค่าเริ่มต้น แม้ว่าการแจงนับจะกำหนดประเภทคลาสและมีตัวสร้าง คุณไม่ได้สร้างอินสแตนซ์ enum โดยใช้ new ตัวแปรการแจงนับถูกใช้และประกาศในลักษณะเดียวกับที่คุณทำตัวแปรพื้นฐาน
8. การสืบทอดใน Java คืออะไร?
กระบวนการที่คลาสหนึ่งได้มาซึ่งคุณสมบัติ (สมาชิกข้อมูล) และฟังก์ชัน (เมธอด) ของคลาสอื่นเรียกว่าการสืบทอด จุดมุ่งหมายของการสืบทอดคือการจัดเตรียมการนำรหัสกลับมาใช้ใหม่เพื่อให้ชั้นเรียนต้องเขียนเฉพาะคุณลักษณะเฉพาะและส่วนที่เหลือของคุณสมบัติทั่วไปและฟังก์ชันการทำงานสามารถขยายจากคลาสอื่นได้
ชั้นเรียนเด็ก:
คลาสที่ขยายคุณสมบัติของคลาสอื่นเรียกว่าคลาสย่อย คลาสย่อย หรือคลาสที่ได้รับ
ระดับผู้ปกครอง:
คลาสที่มีคุณสมบัติและฟังก์ชันการใช้งาน (สืบทอด) โดยคลาสอื่นเรียกว่าคลาสพาเรนต์คลาสซูเปอร์หรือคลาสเบส
9. จะเปรียบเทียบสองสตริงใน Java ได้อย่างไร
"// These two have the same value
new String(""test"").equals(""test"") // --> true // ... but they are not the same object
new String(""test"") == ""test"" // --> false // ... neither are these
new String(""test"") == new String(""test"") // --> false // ... but these are because literals are interned by // the compiler and thus refer to the same object ""test"" == ""test"" // --> true "
10. สิ่งที่เป็นนามธรรมใน Java คืออะไร?
ออบเจ็กต์เป็นส่วนประกอบสำคัญของการเขียนโปรแกรมเชิงวัตถุ วัตถุมีคุณสมบัติและวิธีการบางอย่าง เราสามารถซ่อนพวกมันจากโลกภายนอกผ่านตัวดัดแปลงการเข้าถึง เราสามารถให้การเข้าถึงเฉพาะฟังก์ชันและคุณสมบัติที่จำเป็นสำหรับโปรแกรมอื่นๆ นี่เป็นขั้นตอนทั่วไปในการนำสิ่งที่เป็นนามธรรมไปใช้ใน OOPS
11. การห่อหุ้มใน java . คืออะไร
แนวคิดเบื้องหลังการห่อหุ้มคือการซ่อนรายละเอียดการใช้งานจากผู้ใช้ หากสมาชิกข้อมูลเป็นแบบส่วนตัว แสดงว่าสามารถเข้าถึงได้ภายในคลาสเดียวกันเท่านั้น ไม่มีคลาสภายนอกที่สามารถเข้าถึงสมาชิกข้อมูลส่วนตัว (ตัวแปร) ของคลาสอื่นได้
อย่างไรก็ตาม หากเราตั้งค่าเมธอด public getter และ setter เพื่ออัปเดต (เช่น void setName(String Name )) และอ่าน (เช่น String getName()) ฟิลด์ไพรเวตข้อมูลส่วนตัว คลาสภายนอกจะสามารถเข้าถึงฟิลด์ไพรเวตข้อมูลส่วนตัวเหล่านั้นได้โดยใช้เมธอดสาธารณะ
12. คอลเลกชันในจาวาคืออะไร?
คอลเล็กชันเป็นเหมือนคอนเทนเนอร์ที่จัดกลุ่มหลายรายการในหน่วยเดียว ตัวอย่างเช่น โถช็อกโกแลต รายชื่อ ฯลฯ
คอลเล็กชันถูกใช้ในทุกภาษาการเขียนโปรแกรม และเมื่อ Java มาถึง คอลเล็กชันยังมาพร้อมกับคลาสคอลเล็กชันบางส่วน เช่น Vector, Stack, Hashtable, Array
13. api ในจาวาคืออะไร?
Java application programming interface (API) เป็นรายการของคลาสทั้งหมดที่เป็นส่วนหนึ่งของ Java development kit (JDK) ประกอบด้วยแพ็กเกจ คลาส และอินเทอร์เฟซ Java ทั้งหมด พร้อมด้วยเมธอด ฟิลด์ และคอนสตรัคเตอร์ คลาสที่เขียนไว้ล่วงหน้าเหล่านี้มีฟังก์ชันมากมายสำหรับโปรแกรมเมอร์
14. วิธีการเริ่มต้นอาร์เรย์ใน java?
"int[] arr = new int[5]; // integer array of size 5 you can also change data type
String[] cars = {""Volvo"", ""BMW"", ""Ford"", ""Mazda""};"
15. วิธีรับอินพุตจากผู้ใช้ใน java?
"import java.util.Scanner; Scanner console = new Scanner(System.in); int num = console.nextInt(); console.nextLine() // to take in the enter after the nextInt() String str = console.nextLine();"
16. สแตติกใน java คืออะไร?
ใน Java สมาชิกแบบสแตติกคือสมาชิกของคลาสที่ไม่เกี่ยวข้องกับอินสแตนซ์ของคลาส สมาชิกเป็นสมาชิกของชั้นเรียนแทน ด้วยเหตุนี้ คุณจึงสามารถเข้าถึงสมาชิกแบบคงที่โดยไม่ต้องสร้างอินสแตนซ์ของคลาสก่อน
17. package ใน java คืออะไร?
แพ็คเกจใน Java ใช้เพื่อจัดกลุ่มคลาสที่เกี่ยวข้อง คิดว่ามันเป็นโฟลเดอร์ในไดเร็กทอรีไฟล์ เราใช้แพ็คเกจเพื่อหลีกเลี่ยงความขัดแย้งของชื่อ และเพื่อเขียนโค้ดที่ดูแลรักษาได้ดียิ่งขึ้น แพ็คเกจแบ่งออกเป็นสองประเภท:
แพ็คเกจในตัว (แพ็คเกจจาก Java API)
แพ็คเกจที่ผู้ใช้กำหนด (สร้างแพ็คเกจของคุณเอง)
18. จะเรียงลำดับอาร์เรย์ใน java ได้อย่างไร?
"import java. util. Arrays;
Arrays. sort(array);"
19. คลาสนามธรรมในจาวาคืออะไร?
คลาสที่ประกาศโดยใช้คีย์เวิร์ด "นามธรรม" เรียกว่าคลาสนามธรรม สามารถมีวิธีการเชิงนามธรรม (วิธีที่ไม่มีเนื้อหา) เช่นเดียวกับวิธีที่เป็นรูปธรรม (วิธีปกติกับร่างกาย) คลาสปกติ (คลาสที่ไม่ใช่นามธรรม) ไม่สามารถมีวิธีการที่เป็นนามธรรมได้
20. วิธีการในจาวาคืออะไร?
เมธอดคือบล็อกของโค้ดที่ทำงานเมื่อมีการเรียกเท่านั้น คุณสามารถส่งข้อมูลที่เรียกว่าพารามิเตอร์ไปยังวิธีการได้ เมธอดใช้เพื่อดำเนินการบางอย่าง และเรียกอีกอย่างว่าฟังก์ชัน
21. จะตรวจสอบเวอร์ชั่นจาวาได้อย่างไร?
ดำเนินการ java -version บนพรอมต์คำสั่ง/เทอร์มินัล
22. คลาสในจาวาคืออะไร?
คลาส ซึ่งเป็นส่วนประกอบพื้นฐานของภาษาเชิงวัตถุ เช่น Java เป็นเทมเพลตที่อธิบายข้อมูลและพฤติกรรมที่เกี่ยวข้องกับอินสแตนซ์ของคลาสนั้น เมื่อคุณสร้างอินสแตนซ์ของคลาส คุณจะสร้างวัตถุที่มีลักษณะและให้ความรู้สึกเหมือนกับอินสแตนซ์อื่นๆ ของคลาสเดียวกัน ข้อมูลที่เกี่ยวข้องกับคลาสหรือวัตถุถูกเก็บไว้ในตัวแปร พฤติกรรมที่เกี่ยวข้องกับคลาสหรือวัตถุถูกนำไปใช้กับเมธอด
23. จาวาคอร์คืออะไร?
“Core Java” เป็นคำศัพท์ของ Sun ซึ่งใช้เพื่ออ้างถึง Java SE รุ่นมาตรฐานและชุดของเทคโนโลยีที่เกี่ยวข้อง เช่น Java VM, CORBA และอื่นๆ ส่วนใหญ่จะแยกความแตกต่างจาก Java ME หรือ Java EE นอกจากนี้ โปรดทราบว่าพวกเขากำลังพูดถึงชุดของไลบรารีมากกว่าภาษาโปรแกรม
24. จะเปิดใช้งาน java ใน chrome ได้อย่างไร?
- ในแผงควบคุม Java คลิกแท็บความปลอดภัย
- เลือกตัวเลือก เปิดใช้งานเนื้อหา Java ในเบราว์เซอร์
- คลิก Apply จากนั้นคลิก OK เพื่อยืนยันการเปลี่ยนแปลง
- รีสตาร์ทเบราว์เซอร์เพื่อเปิดใช้งานการเปลี่ยนแปลง
25. สตริงในจาวาคืออะไร?
สตริงคือลำดับของอักขระ เช่น "สวัสดี" คือสตริงที่มีอักขระ 5 ตัว ใน java สตริงเป็นอ็อบเจ็กต์ที่ไม่เปลี่ยนรูป ซึ่งหมายความว่าเป็นค่าคงที่และไม่สามารถเปลี่ยนแปลงได้เมื่อสร้างขึ้นแล้ว
26. ข้อยกเว้นในจาวาคืออะไร?
ข้อยกเว้นคือเหตุการณ์ที่เกิดขึ้นระหว่างการทำงานของโปรแกรม ซึ่งขัดขวางขั้นตอนปกติของคำสั่งของโปรแกรม
เมื่อเกิดข้อผิดพลาดภายในเมธอด เมธอดจะสร้างอ็อบเจ็กต์และส่งต่อไปยังระบบรันไทม์ อ็อบเจ็กต์นี้เรียกว่าอ็อบเจกต์ข้อยกเว้น มีข้อมูลเกี่ยวกับข้อผิดพลาด รวมถึงประเภทและสถานะของโปรแกรมเมื่อเกิดข้อผิดพลาด การสร้างอ็อบเจ็กต์ข้อยกเว้นและส่งต่อไปยังระบบรันไทม์เรียกว่าการโยนข้อยกเว้น
หลังจากที่เมธอดส่งข้อยกเว้น ระบบรันไทม์จะพยายามค้นหาบางสิ่งที่จะจัดการกับมัน ชุดของ "บางสิ่ง" ที่เป็นไปได้ในการจัดการข้อยกเว้นคือรายการของวิธีการที่ได้รับการเรียงลำดับซึ่งถูกเรียกเพื่อไปยังวิธีการที่เกิดข้อผิดพลาด รายการเมธอดเรียกว่า call stack
27. เหตุใดจาวาจึงไม่รองรับการสืบทอดหลายรายการ
Java รองรับการสืบทอดหลายรายการผ่านอินเทอร์เฟซเท่านั้น คลาสสามารถใช้อินเทอร์เฟซจำนวนเท่าใดก็ได้ แต่สามารถขยายได้เพียงคลาสเดียวเท่านั้น ไม่รองรับการสืบทอดหลายรายการเนื่องจากนำไปสู่ปัญหาเพชรที่ร้ายแรง
28. จะรับอินพุตสตริงใน java ได้อย่างไร?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
29. singleton class ใน java คืออะไร?
รูปแบบการออกแบบซิงเกิลตันใช้เพื่อจำกัดการสร้างอินสแตนซ์ของคลาส และทำให้แน่ใจว่ามีเพียงอินสแตนซ์เดียวของคลาสที่มีอยู่ใน JVM กล่าวอีกนัยหนึ่ง คลาสซิงเกิลตันคือคลาสที่สามารถมีได้เพียงหนึ่งอ็อบเจ็กต์ (อินสแตนซ์ของคลาส) ต่อครั้งต่ออินสแตนซ์ JVM
30. อาร์เรย์ในจาวาคืออะไร?
อาร์เรย์คือออบเจ็กต์คอนเทนเนอร์ที่เก็บค่าประเภทเดียวจำนวนคงที่ ความยาวของอาร์เรย์ถูกสร้างขึ้นเมื่อสร้างอาร์เรย์ หลังจากสร้างแล้ว ความยาวจะคงที่ คุณได้เห็นตัวอย่างของอาร์เรย์แล้วในวิธีการหลักของ "Hello World!" แอปพลิเคชัน. ส่วนนี้จะกล่าวถึงอาร์เรย์โดยละเอียดยิ่งขึ้น
ภาพประกอบของอาร์เรย์ 10 กล่องที่มีหมายเลข 0 ถึง 9; ดัชนี 0 ระบุองค์ประกอบแรกในอาร์เรย์
อาร์เรย์ของ 10 องค์ประกอบ
แต่ละรายการในอาร์เรย์เรียกว่าองค์ประกอบ และแต่ละองค์ประกอบสามารถเข้าถึงได้โดยดัชนีตัวเลข ดังที่แสดงในภาพประกอบก่อนหน้านี้ การกำหนดหมายเลขเริ่มต้นด้วย 0 ตัวอย่างเช่น องค์ประกอบที่ 9 จะเข้าถึงได้ที่ดัชนี 8
31. การรวบรวมขยะใน java คืออะไร?
การรวบรวมขยะ Java เป็นกระบวนการอัตโนมัติ โปรแกรมเมอร์ไม่จำเป็นต้องทำเครื่องหมายวัตถุที่จะลบอย่างชัดเจน การใช้งานการรวบรวมขยะอยู่ใน JVM JVM แต่ละตัวสามารถใช้การรวบรวมขยะได้ตามต้องการ ข้อกำหนดเพียงอย่างเดียวคือตรงตามข้อกำหนด JVM แม้ว่าจะมี JVM อยู่มากมาย แต่ HotSpot ของ Oracle นั้นเป็นที่นิยมมากที่สุด มีตัวเลือกการรวบรวมขยะที่แข็งแกร่งและครบถ้วน
32. ทำไมเราต้องห่อหุ้มด้วยจาวา?
การห่อหุ้มใน Java เป็นกลไกของการรวมโค้ดและ data (ตัวแปร) ที่กระทำต่อข้อมูล (เมธอด) เข้าด้วยกันเป็นหน่วยเดียว ในการห่อหุ้ม ตัวแปรของคลาสจะถูกซ่อนจากคลาสอื่นและสามารถเข้าถึงได้ผ่านเมธอดของคลาสปัจจุบันเท่านั้น
33. jvm ใน java คืออะไร?
เครื่องเสมือน Java (JVM) เป็นเครื่องเสมือนที่ช่วยให้คอมพิวเตอร์สามารถเรียกใช้โปรแกรม Java รวมถึงโปรแกรมที่เขียนในภาษาอื่น ๆ ที่คอมไพล์เป็น Java bytecode ด้วย JVM มีรายละเอียดตามข้อกำหนดที่อธิบายสิ่งที่จำเป็นในการใช้งาน JVM อย่างเป็นทางการ
34. การเขียนโปรแกรมจาวาคืออะไร?
Java เป็นภาษาการเขียนโปรแกรมเอนกประสงค์ที่มีประสิทธิภาพ ใช้ในการพัฒนาแอปพลิเคชันเดสก์ท็อปและมือถือ การประมวลผลข้อมูลขนาดใหญ่ ระบบฝังตัว และอื่นๆ Oracle บริษัทที่เป็นเจ้าของ Java กล่าวว่า Java ทำงานบนอุปกรณ์ 3 พันล้านเครื่องทั่วโลก ซึ่งทำให้ Java เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมมากที่สุด
35. hashmap ทำงานอย่างไรภายใน java?
HashMap ใน Java ทำงานบนหลักการแฮช เป็นโครงสร้างข้อมูลที่ช่วยให้เราสามารถจัดเก็บวัตถุและเรียกค้นข้อมูลได้ในเวลาคงที่ O(1) หากเราทราบคีย์ ในการแฮช ฟังก์ชันแฮชใช้เพื่อเชื่อมโยงคีย์และค่าใน HashMap
36. ใครเป็นผู้คิดค้นจาวา?
Java ได้รับการพัฒนาโดย James Gosling ที่ Sun Microsystems (ซึ่ง Oracle เข้าซื้อกิจการตั้งแต่นั้นมา) และเผยแพร่ในปี 1995 เป็นองค์ประกอบหลักของแพลตฟอร์ม Java ของ Sun Microsystems
37. จะรันโปรแกรมจาวาได้อย่างไร?
เปิดหน้าต่างพรอมต์คำสั่งและไปที่ไดเร็กทอรีที่คุณบันทึกโปรแกรมจาวา (HelloWorld. java) …
พิมพ์ 'javac HelloWorld java' แล้วกด Enter เพื่อคอมไพล์โค้ดของคุณ
ตอนนี้ พิมพ์ ' HelloWorld ' เพื่อเรียกใช้โปรแกรมของคุณ
คุณจะสามารถเห็นผลการพิมพ์บนหน้าต่าง
38. จะรับข้อมูลจากผู้ใช้ใน java ได้อย่างไร?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
39. bytecode ในจาวาคืออะไร?
Bytecode เป็นรูปแบบที่คอมไพล์สำหรับโปรแกรม Java เมื่อโปรแกรม Java ถูกแปลงเป็น bytecode แล้ว จะสามารถถ่ายโอนข้ามเครือข่ายและดำเนินการโดย Java Virtual Machine (JVM) ไฟล์ Bytecode โดยทั่วไปมีนามสกุล .class
40. จะตั้งค่า classpath ใน java ได้อย่างไร?
- เลือก เริ่ม เลือก แผงควบคุม ดับเบิลคลิก ระบบ แล้วเลือกแท็บ ขั้นสูง
- คลิกตัวแปรสภาพแวดล้อม ในส่วน ตัวแปรระบบ ค้นหาตัวแปรสภาพแวดล้อม PATH และเลือก
- ในหน้าต่าง Edit System Variable (หรือ New System Variable) ให้ระบุค่าของตัวแปรสภาพแวดล้อม PATH คลิกตกลง
41. จะเชื่อมต่อฐานข้อมูลใน java ได้อย่างไร?
- ติดตั้งหรือค้นหาฐานข้อมูลที่คุณต้องการเข้าถึง
- รวมไลบรารี JDBC
- ตรวจสอบให้แน่ใจว่าไดรเวอร์ JDBC ที่คุณต้องการอยู่บน classpath ของคุณ
- ใช้ไลบรารี JDBC เพื่อรับการเชื่อมต่อกับฐานข้อมูล
- ใช้การเชื่อมต่อเพื่อออกคำสั่ง SQL
42. enum ใน java คืออะไร?
enum เป็น "คลาส" พิเศษที่แสดงถึงกลุ่มของค่าคงที่ (ตัวแปรที่ไม่สามารถเปลี่ยนแปลงได้ เช่น ตัวแปรสุดท้าย) ในการสร้าง enum ให้ใช้คีย์เวิร์ด enum (แทนคลาสหรืออินเตอร์เฟส) และแยกค่าคงที่ด้วยเครื่องหมายจุลภาค
43. จะถอนการติดตั้งจาวาได้อย่างไร?
- คลิกเริ่มการทำงาน
- เลือกการตั้งค่า
- เลือกระบบ
- เลือกแอพและคุณสมบัติ
- เลือกโปรแกรมที่จะถอนการติดตั้งแล้วคลิกปุ่มถอนการติดตั้ง
- ตอบสนองต่อข้อความเตือนเพื่อสิ้นสุดการถอนการติดตั้ง
44. จะค้นหาอักขระที่ซ้ำกันในสตริงใน java ได้อย่างไร?
"public class Example { public static void main(String argu[]) { String str = ""beautiful beach""; char[] carray = str.toCharArray(); System.out.println(""The string is:"" + str); System.out.print(""Duplicate Characters in above string are: ""); for (int i = 0; i < str.length(); i++) { for (int j = i + 1; j < str.length(); j++) { if (carray[i] == carray[j]) { System.out.print(carray[j] + "" ""); break; } } } }
}"
45. จะป้อนตัวอักษรใน java ได้อย่างไร?
"import java.util.Scanner; public class CharacterInputExample1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print(""Input a character: ""); // reading a character char c = sc.next().charAt(0); //prints the character System.out.println(""You have entered ""+c); } } "
46. จะอ่านสตริงใน java ได้อย่างไร?
"import java.util.Scanner; // Import the Scanner class class MyClass { public static void main(String[] args) { Scanner myObj = new Scanner(System.in); // Create a Scanner object System.out.println(""Enter username""); String userName = myObj.nextLine(); // Read user input System.out.println(""Username is: "" + userName); // Output user input }
}"
47. จะปัดเศษตัวเลขใน java ได้อย่างไร?
"import java.lang.Math; // Needed to use Math.round() class Program { public static void main( String args[] ) { double num1 = 74.65; System.out.println(Math.round(num1)); float num2 = 1337.345523f; System.out.println(Math.round(num2)); }
}"
48. จะรับวันที่ปัจจุบันใน java ได้อย่างไร?
"DateFormat df = new SimpleDateFormat(""dd/MM/yy HH:mm:ss"");
Date dateobj = new Date();
System.out.println(df.format(dateobj));"
49. dao ใน java คืออะไร?
Dao เป็นคลาส Java อย่างง่ายที่มีตรรกะ JDBC Java Data Access Object (Java DAO) เป็นองค์ประกอบที่สำคัญในแอปพลิเคชันทางธุรกิจ แอปพลิเคชันทางธุรกิจมักต้องการการเข้าถึงข้อมูลจากฐานข้อมูลเชิงสัมพันธ์หรือฐานข้อมูลวัตถุ และแพลตฟอร์ม Java มีเทคนิคมากมายในการเข้าถึงข้อมูลนี้
50. awt ใน java คืออะไร?
Abstract Window Toolkit (AWT) คือหน้าต่าง กราฟิก และชุดเครื่องมือวิดเจ็ตอินเทอร์เฟซผู้ใช้ดั้งเดิมของ Java ก่อน Swing AWT เป็นส่วนหนึ่งของ Java Foundation Classes (JFC) — API มาตรฐานสำหรับการจัดเตรียมส่วนต่อประสานกราฟิกกับผู้ใช้ (GUI) สำหรับโปรแกรม Java AWT ยังเป็นชุดเครื่องมือ GUI สำหรับโปรไฟล์ Java ME จำนวนหนึ่งอีกด้วย ตัวอย่างเช่น โปรไฟล์ Connected Device Configuration ต้องใช้ Java Runtime บนโทรศัพท์มือถือเพื่อรองรับ Abstract Window Toolkit
51. เฟรมเวิร์กในจาวาคืออะไร?
กรอบงานเป็นเนื้อหาขนาดใหญ่ (โดยปกติหลายคลาส) ของโค้ดที่เขียนไว้ล่วงหน้าซึ่งคุณเพิ่มโค้ดของคุณเองเพื่อแก้ปัญหาในโดเมนเฉพาะ บางทีคุณอาจพูดได้ว่าเฟรมเวิร์กใช้โค้ดของคุณเพราะโดยปกติแล้วจะเป็นเฟรมเวิร์กที่อยู่ในการควบคุม คุณใช้เฟรมเวิร์กโดยการเรียกใช้เมธอด การสืบทอด และการจัดหา "การเรียกกลับ" ผู้ฟัง หรือการใช้งานรูปแบบ Observer อื่นๆ
52. จะอัพเดทจาวาได้อย่างไร?
การอัปเดต Java บน Windows ด้วยตนเองมักจะทำผ่านแผงควบคุม Java
Windows 10: พิมพ์ “java” ในช่องค้นหาของ Windows/Cortana ที่มุมล่างซ้ายมือของหน้าจอ เมื่อเมนูปรากฏขึ้น ให้เลือก Configure Java ซึ่งอยู่ในส่วน Apps
53. จะรันโปรแกรมจาวาในพรอมต์คำสั่งได้อย่างไร?
execute java <programName.java>
54. ตัวแปรในจาวาคืออะไร?
ตัวแปร Java เป็นหน่วยความจำที่สามารถมีค่าข้อมูลได้ ตัวแปรจึงมีชนิดข้อมูล ชนิดข้อมูลมีรายละเอียดเพิ่มเติมในข้อความเกี่ยวกับชนิดข้อมูล Java โดยทั่วไปแล้ว ตัวแปรจะถูกใช้เพื่อจัดเก็บข้อมูลที่โปรแกรม Java ของคุณต้องการทำงาน
55. จาวาและจาวาสคริปต์ต่างกันอย่างไร?
ความแตกต่างที่สำคัญระหว่าง JavaScript และ Java คือ:
1. JavaScript ใช้สำหรับการพัฒนาส่วนหน้าในขณะที่ Java ใช้สำหรับการพัฒนาส่วนหลัง เช่น
JavaScript รับผิดชอบการทำงานแบบไดนามิกของหน้าเว็บ โดยหลักแล้ว JavaScript จะจัดการเหตุการณ์ คุกกี้ อาแจ็กซ์ ( JavaScript และ XML แบบอะซิงโครนัส) ฯลฯ ในเว็บไซต์ JavaScript เป็นหัวใจของ Dynamic User Interface ของเว็บเพจ ในขณะที่ Java เป็นภาษาการเขียนโปรแกรมที่ดีที่สุดสำหรับวิศวกรซอฟต์แวร์ และสามารถใช้ได้กับ JSP (Java Server pages) สำหรับการจัดการส่วนหลัง
2. Java Script เป็นภาษาที่พิมพ์แบบไดนามิกและ Java เป็นภาษาที่พิมพ์แบบคงที่: ie
ใน JavaScript ชนิดข้อมูลของตัวแปรหนึ่งตัวแปรสามารถเปลี่ยนแปลงได้:
var string = "สวัสดีชาวโลก";
สตริง = 4;
document.write(สตริง); // ผลลัพธ์คือ 4
document.write( ) จะพิมพ์ '4' บนเบราว์เซอร์
แต่ใน Java ประเภทข้อมูลของตัวแปรหนึ่งตัวไม่สามารถเปลี่ยนแปลงได้และ Java จะแสดงข้อผิดพลาด
จำนวน int = 45;
หมายเลข = "สวัสดีชาวโลก"; //ข้อผิดพลาด!!!!!!!
3. JavaScript เป็นภาษาสคริปต์ในขณะที่ Java เป็นภาษาโปรแกรม:
เช่นเดียวกับภาษาอื่นๆ Java ยังต้องการคอมไพเลอร์สำหรับสร้างและรันโปรแกรมในขณะที่เบราว์เซอร์อ่านและจัดการสคริปต์ JavaScript
4. Java และ JavaScript มีความแตกต่างกันอย่างมากใน SYNTAX
ตัวอย่างเช่น:
โปรแกรม Hello World ใน JAVA:
public class hello { public static void main(String[] args) { System.out.println("Hello World"); } } Hello World Program in JavaScript: <script> document.write("Hello World"); </script>
5. ทั้งสองภาษาเป็นแบบเชิงวัตถุ แต่ JavaScript เป็นภาษาเชิงวัตถุบางส่วนในขณะที่ Java เป็น Langauge เชิงวัตถุอย่างสมบูรณ์ JavaScript สามารถใช้ได้โดยมีหรือไม่มีการใช้วัตถุ แต่ไม่สามารถใช้ Java ได้โดยไม่ต้องใช้คลาส
56. จะนับจำนวนการเกิดขึ้นของอักขระในสตริงใน java ได้อย่างไร?
"import java.util.HashMap; public class EachCharCountInString
{ private static void characterCount(String inputString) { //Creating a HashMap containing char as a key and occurrences as a value HashMap<Character, Integer> charCountMap = new HashMap<Character, Integer>(); //Converting given string to char array char[] strArray = inputString.toCharArray(); //checking each char of strArray for (char c : strArray) { if(charCountMap.containsKey(c)) { //If char 'c' is present in charCountMap, incrementing it's count by 1 charCountMap.put(c, charCountMap.get(c)+1); } else { //If char 'c' is not present in charCountMap, //putting 'c' into charCountMap with 1 as it's value charCountMap.put(c, 1); } } //Printing inputString and charCountMap System.out.println(inputString+"" : ""+charCountMap); } public static void main(String[] args) { characterCount(""Java J2EE Java JSP J2EE""); characterCount(""All Is Well""); characterCount(""Done And Gone""); }
}"
57. จะอ่านไฟล์ excel ใน java ได้อย่างไร?
"FileInputStream fis = new FileInputStream(new File(""WriteSheet.xlsx"")); XSSFWorkbook workbook = new XSSFWorkbook(fis); XSSFSheet spreadsheet = workbook.getSheetAt(0); Iterator < Row > rowIterator = spreadsheet.iterator(); while (rowIterator.hasNext()) { row = (XSSFRow) rowIterator.next(); Iterator < Cell > cellIterator = row.cellIterator(); while ( cellIterator.hasNext()) { Cell cell = cellIterator.next(); switch (cell.getCellType()) { case Cell.CELL_TYPE_NUMERIC: System.out.print(cell.getNumericCellValue() + "" tt ""); break; case Cell.CELL_TYPE_STRING: System.out.print( cell.getStringCellValue() + "" tt ""); break; } } System.out.println(); } fis.close();"
58. วิธีการในจาวาคืออะไร?
ฟังก์ชันเรียกอีกอย่างว่าเมธอดในจาวา
59. วิธีอ่านไฟล์ csv ใน java?
"public static void readDataLineByLine(String file) { try { // Create an object of filereader // class with CSV file as a parameter. FileReader filereader = new FileReader(file); // create csvReader object passing // file reader as a parameter CSVReader csvReader = new CSVReader(filereader); String[] nextRecord; // we are going to read data line by line while ((nextRecord = csvReader.readNext()) != null) { for (String cell : nextRecord) { System.out.print(cell + ""t""); } System.out.println(); } } catch (Exception e) { e.printStackTrace(); } } "
60. จะตรวจสอบเวอร์ชั่น java ใน windows ได้อย่างไร?
พิมพ์ java -version ที่พรอมต์คำสั่ง
61. public static void main ใน java คืออะไร?
นี่คือตัวแก้ไขการเข้าถึงของวิธีการหลัก จะต้องเป็นสาธารณะเพื่อให้รันไทม์ของ java สามารถรันวิธีนี้ได้ โปรดจำไว้ว่า หากคุณทำให้วิธีการใดๆ ไม่เป็นสาธารณะ จะไม่ได้รับอนุญาตให้ดำเนินการโดยโปรแกรมใดๆ ก็ตาม มีการจำกัดการเข้าถึงบางประการ ดังนั้นจึงหมายความว่าวิธีการหลักต้องเป็นแบบสาธารณะ มาดูกันว่าจะเกิดอะไรขึ้นหากเรากำหนดวิธีการหลักเป็นแบบไม่เป็นสาธารณะ
เมื่อรันไทม์จาวาเริ่มต้น ไม่มีวัตถุของคลาสปรากฏ นั่นเป็นสาเหตุที่เมธอดหลักต้องคงที่เพื่อให้ JVM สามารถโหลดคลาสลงในหน่วยความจำและเรียกเมธอดหลักได้ หากวิธีการหลักไม่คงที่ JVM จะไม่สามารถเรียกใช้ได้เนื่องจากไม่มีวัตถุของคลาสอยู่
การเขียนโปรแกรม Java กำหนดให้ทุกวิธีจัดเตรียมประเภทการส่งคืน วิธีการหลักของ Java ไม่ส่งคืนอะไรเลย นั่นเป็นสาเหตุที่ประเภทการส่งคืนนั้นเป็นโมฆะ สิ่งนี้ทำเพื่อให้สิ่งต่าง ๆ เรียบง่ายเพราะเมื่อวิธีการหลักเสร็จสิ้นการทำงาน โปรแกรมจาวาจะยุติลง ดังนั้นจึงไม่มีประโยชน์ในการส่งคืนสิ่งใด ไม่มีอะไรที่ JVM สามารถทำได้สำหรับวัตถุที่ส่งคืน หากเราพยายามส่งคืนบางสิ่งจากวิธีการหลัก จะทำให้เกิดข้อผิดพลาดในการรวบรวมเป็นค่าตอบแทนที่ไม่คาดคิด
62. ทำไมเราใช้อินเตอร์เฟสใน java?
ใช้เพื่อให้บรรลุนามธรรมทั้งหมด เนื่องจากจาวาไม่รองรับการสืบทอดหลายรายการในกรณีของคลาส แต่ด้วยการใช้อินเตอร์เฟส มันจึงสามารถรับมรดกได้หลายรายการ นอกจากนี้ยังใช้เพื่อให้ได้ข้อต่อแบบหลวม อินเทอร์เฟซใช้เพื่อนำสิ่งที่เป็นนามธรรมไปใช้
63. จุดประสงค์ของการทำให้เป็นอันดับใน java คืออะไร?
Object Serialization เป็นกระบวนการที่ใช้ในการแปลงสถานะของอ็อบเจ็กต์เป็น byte stream ซึ่งสามารถคงอยู่ในดิสก์/ไฟล์ หรือส่งผ่านเครือข่ายไปยังเครื่องเสมือน Java อื่นๆ ที่ทำงานอยู่ กระบวนการย้อนกลับของการสร้างวัตถุจากสตรีมไบต์เรียกว่าดีซีเรียลไลเซชัน
64. อินเตอร์เฟสที่ใช้งานได้ใน java คืออะไร?
อินเทอร์เฟซที่ใช้งานได้ใน Java คืออินเทอร์เฟซที่มีเมธอดนามธรรม (ไม่ได้ใช้งาน) เพียงวิธีเดียว อินเทอร์เฟซที่ใช้งานได้สามารถประกอบด้วยวิธีการเริ่มต้นและแบบคงที่ซึ่งมีการนำไปใช้ นอกเหนือจากวิธีการเดียวที่ไม่ได้ใช้งาน
65. คีย์เวิร์ดนี้ในภาษาจาวาคืออะไร?
คีย์เวิร์ดนี้อ้างถึงอ็อบเจ็กต์ปัจจุบันในเมธอดหรือคอนสตรัคเตอร์ การใช้งานทั่วไปของคีย์เวิร์ดนี้คือการกำจัดความสับสนระหว่างแอตทริบิวต์ของคลาสและพารามิเตอร์ที่มีชื่อเดียวกัน
66. จาวามีชื่ออย่างไรในตอนแรก?
ตอนแรกภาษานี้เรียกว่าโอ๊คตามต้นโอ๊กที่ยังคงเป็นสำนักงานของลูกห่าน ต่อมางานผ่านชื่อ Green และสุดท้ายเปลี่ยนชื่อเป็น Java จาก Java ซึ่งเป็นแบรนด์กาแฟ กาแฟจากอินโดนีเซีย
67. จะลบองค์ประกอบที่ซ้ำกันออกจากอาร์เรย์ใน java ได้อย่างไร?
"public class Change
{ public static int removeDuplicate(int[] arrNumbers, int num) { if(num == 0 || num == 1) { return num; } int[] arrTemporary = new int[num]; int b = 0; for(int a = 0; a < num - 1; a++) { if(arrNumbers[a] != arrNumbers[a + 1]) { arrTemporary[b++] = arrNumbers[a]; } } arrTemporary[b++] = arrNumbers[num - 1]; for(int a = 0; a < b; a++) { arrNumbers[a] = arrTemporary[a]; } return b; } public static void main(String[] args) { int[] arrInput = {1, 2, 3, 3, 4, 5, 5, 6, 7, 8}; int len = arrInput.length; len = removeDuplicate(arrInput, len); // printing elements for(int a = 0; a < len; a++) { System.out.print(arrInput[a] + "" ""); } }
} "
68. ความแตกต่างระหว่างการโยนและการขว้างใน java คืออะไร?
Throw เป็นคีย์เวิร์ดที่ใช้ส่งข้อยกเว้นอย่างชัดเจนในโปรแกรมภายในฟังก์ชันหรือภายในบล็อกของโค้ด Throws เป็นคีย์เวิร์ดที่ใช้ในเมธอด ลายเซ็นที่ใช้ในการประกาศข้อยกเว้น ซึ่งอาจส่งโดยฟังก์ชันขณะรันโค้ด
69. classpath ใน java คืออะไร?
ตัวแปร CLASSPATH เป็นวิธีหนึ่งในการบอกแอปพลิเคชัน รวมถึงเครื่องมือ JDK ว่าจะค้นหาคลาสผู้ใช้ได้ที่ไหน (คลาสที่เป็นส่วนหนึ่งของแพลตฟอร์ม JRE, JDK และส่วนขยายควรกำหนดด้วยวิธีอื่น เช่น เส้นทางคลาสบูตสแตรปหรือไดเร็กทอรีส่วนขยาย)
70. เหตุใดแพลตฟอร์ม Java จึงเป็นอิสระ
ในขณะที่คอมไพล์ คอมไพเลอร์ java จะแปลงซอร์สโค้ดเป็นชุด JVM ที่แปลได้ของฟอร์มระดับกลาง ซึ่งเรียกว่าเป็นโค้ดไบต์ ซึ่งไม่เหมือนกับโค้ดที่คอมไพล์ที่สร้างโดยคอมไพเลอร์อื่นๆ และไม่สามารถดำเนินการได้ ล่ามเครื่องเสมือน Java ประมวลผลรหัสที่ไม่สามารถเรียกใช้งานได้และเรียกใช้งานบนเครื่องเฉพาะใดๆ ดังนั้นการพึ่งพาแพลตฟอร์มจะถูกลบออก
71. วิธีการโอเวอร์โหลดคืออะไร? ทำไมถึงใช้ใน Java?
การแทนที่เมธอดเป็นกระบวนการที่เมธอดที่สืบทอดมาจากคลาสย่อยจากคลาสพาเรนต์ได้รับการแก้ไขตามความต้องการของคลาสย่อย มีประโยชน์ในการออกแบบระบบแบบลำดับชั้นที่อ็อบเจ็กต์ใช้คุณสมบัติร่วมกัน
ตัวอย่าง: สัตว์มีคุณสมบัติเช่น สีขน เสียง ตอนนี้คลาส dog และ cat จะสืบทอดคุณสมบัติเหล่านี้และกำหนดค่าเฉพาะให้กับคุณสมบัติเหล่านี้
class Animal { void sound(){ } } class Cat extends Animal{ void sound(){ System.out.println("Meow"); } } class Dog extends Animal{ void sound(){ System.out.println("Bark"); } } public class OverRide{ public static void main(String args[]){ Cat c=new Cat(); c.sound(); Dog d=new Dog(); d.sound(); } }
72. วิธีการโอเวอร์โหลดคืออะไร? ทำไมถึงใช้ใน Java?
หากหลายฟังก์ชันในคลาสมีชื่อเหมือนกันแต่นิยามฟังก์ชันต่างกัน จะเรียกว่าวิธีการโอเวอร์โหลด
มันถูกใช้เพื่อทำให้ฟังก์ชัน java ให้บริการเพื่อวัตถุประสงค์หลายประการ ทำให้ตัวล้างโค้ดและ API ซับซ้อนน้อยลง
ตัวอย่าง:
println() prints any data type passed to it as a string. public class Add_Overload { void add(int x, int y){ System.out.println(x+y); } void add(double x, double y){ System.out.println(x+y); } void add(double x, int y){ System.out.println(x+y); } public static void main(String args[]){ Add_Overload a= new Add_Overload(); a.add(10,20); a.add(20.11,11.22); a.add(20.11,2); }
73. ทำไม Java แข็งแกร่ง?
Java ถูกเรียกว่ามีประสิทธิภาพเนื่องจากคุณสมบัติดังต่อไปนี้:
– ไม่มีพอยน์เตอร์: Java ไม่มีพอยน์เตอร์ที่ทำให้ปลอดภัย
– Garbage Collection: Java จะล้างวัตถุที่ไม่ได้ใช้ออกจากหน่วยความจำที่ไม่ได้ใช้โดยอัตโนมัติ
– Java มีการจัดการหน่วยความจำที่แข็งแกร่ง
– Java รองรับการเชื่อมโยงแบบไดนามิก
74. เหตุใด Java จึงปลอดภัย
Java ไม่อนุญาตให้ใช้พอยน์เตอร์ พอยน์เตอร์ให้การเข้าถึงตำแหน่งจริงของตัวแปรในระบบ นอกจากนี้ โปรแกรมจาวายังเป็นไฟล์เรียกทำงานแบบไบต์โค้ดที่สามารถรันได้เฉพาะใน JVM เท่านั้น ดังนั้นโปรแกรมจาวาจึงไม่สามารถเข้าถึงระบบโฮสต์ที่กำลังดำเนินการอยู่ ทำให้มีความปลอดภัยมากขึ้น Java มีระบบจัดการหน่วยความจำของตัวเอง ซึ่งเพิ่มคุณสมบัติด้านความปลอดภัยด้วย
75. อะไรคือความแตกต่างระหว่าง JDK, JRE และ JVM?
JDK เป็นสภาพแวดล้อมซอฟต์แวร์ที่ใช้สำหรับการพัฒนาโปรแกรม Java เป็นชุดของไลบรารี่ที่สามารถนำไปใช้พัฒนาแอพพลิเคชั่นต่างๆ JRE (Java Runtime Environment) เป็นสภาพแวดล้อมซอฟต์แวร์ที่อนุญาตให้โปรแกรม Java ทำงาน แอปพลิเคชัน Java ทั้งหมดทำงานภายใน JRE JVM (เครื่องเสมือน Java) เป็นสภาพแวดล้อมที่รับผิดชอบในการแปลงโปรแกรมจาวาเป็นไฟล์เรียกทำงานแบบไบต์โค้ด JDK และ JRE นั้นขึ้นอยู่กับแพลตฟอร์มในขณะที่ JVM นั้นไม่ขึ้นกับแพลตฟอร์ม
76. คุณสมบัติของ Java คืออะไร?
Java เป็นภาษาโปรแกรมเชิงวัตถุบริสุทธิ์ที่มีคุณสมบัติดังต่อไปนี้:
- ประสิทธิภาพสูง
– แพลตฟอร์มอิสระ
– แข็งแกร่ง
- มัลติเธรด
- เรียบง่าย
- ปลอดภัย
77. Java รองรับพอยน์เตอร์หรือไม่
จาวาไม่รองรับพอยน์เตอร์เพื่อให้ปลอดภัยยิ่งขึ้น
คุณสามารถอ่านบทช่วยสอน Java นี้เพื่อทำความเข้าใจได้ดีขึ้น.
78. เหตุใดจึงใช้ตัวแปรสแตติกใน Java
เมธอดและตัวแปรสแตติกถูกใช้ในจาวาเพื่อรักษาสำเนาเอนทิตีในอ็อบเจ็กต์ทั้งหมดเพียงสำเนาเดียว เมื่อตัวแปรถูกประกาศเป็นสแตติก ทุกอินสแตนซ์ของคลาสจะแบ่งใช้ การเปลี่ยนแปลงที่ทำโดยอินสแตนซ์ไปยังตัวแปรจะสะท้อนให้เห็นในทุกอินสแตนซ์
public class static_variable { static int a; static int b; static_variable(){ a=10; } int calc_b(){ b=a+10; return b; }
void print_val(){ System.out.println(this.b);
}
public static void main(String args[]){ static_variable v=new static_variable(); v.calc_b(); v.print_val(); static_variable v1=new static_variable(); v1.print_val();
}
}
79. วิธีสแตติก ตัวแปรสแตติก และบล็อกสแตติกคืออะไร
เมธอดแบบสแตติกคือเมธอดที่สามารถเรียกได้โดยตรงภายในคลาสโดยไม่ต้องใช้อ็อบเจกต์
ตัวแปรสแตติกคือตัวแปรที่ใช้ร่วมกันระหว่างอินสแตนซ์ทั้งหมดของคลาส
บล็อกแบบคงที่คือบล็อกโค้ดที่โหลดเมื่อคลาสโหลดในหน่วยความจำ
80. การใช้วิธีการแบบคงที่คืออะไร?
เมธอดสแตติกถูกใช้เมื่อไม่มีข้อกำหนดในการสร้างอินสแตนซ์ของคลาส หากวิธีการใดจะไม่เปลี่ยนแปลงหรือถูกแทนที่ ก็สามารถทำให้เป็นแบบคงที่ได้
81. ตัวแปรสแตติกมีประโยชน์อย่างไร?
ตัวแปรสแตติกใช้เพื่อรักษาสถานะทั่วไปของข้อมูลบางอย่างซึ่งสามารถแก้ไขได้และเข้าถึงได้โดยอินสแตนซ์ทั้งหมดของคลาส
82. อินเทอร์เฟซคืออะไร?
อินเทอร์เฟซคือชุดของค่าคงที่ เมธอดสแตติก เมธอดนามธรรม และเมธอดดีฟอลต์ เมธอดในอินเทอร์เฟซไม่มีเนื้อหา
83. Abstraction ประสบความสำเร็จใน Java อย่างไร?
นามธรรมสามารถทำได้ใน Java โดยใช้คลาสนามธรรมและวิธีการนามธรรม
84. เหตุใดสตริงจึงไม่เปลี่ยนรูปใน Java?
สตริงในจาวามักใช้สำหรับคีย์แฮชแมป ตอนนี้ถ้ามีคนเปลี่ยนค่าของสตริงจะทำให้เกิดความคลาดเคลื่อนอย่างรุนแรง ดังนั้นสตริงจึงไม่เปลี่ยนรูป
85. คลาส wrapper ใน Java คืออะไร?
คลาส Wrapper เป็นฟังก์ชันที่รองรับโดย java เพื่อยอมรับชนิดข้อมูลดั้งเดิมเป็นอินพุต จากนั้นแปลงเป็นออบเจกต์สตริงในภายหลัง เพื่อให้สามารถเปรียบเทียบกับอ็อบเจ็กต์อื่นได้
86. อินเตอร์เฟสใน Java สามารถสืบทอดได้หรือไม่?
ใช่ สามารถสืบทอดอินเทอร์เฟซใน java การสืบทอดไฮบริดและการสืบทอดตามลำดับชั้นได้รับการสนับสนุนโดย java ผ่านอินเทอร์เฟซที่สืบทอดได้
87. อนุญาตให้ใช้เมธอดแบบสแตติกในอินเตอร์เฟส Java หรือไม่
ใช่ อนุญาตให้ใช้เมธอดแบบสแตติกในอินเตอร์เฟส java พวกเขาจะถือว่าเป็นวิธีการเริ่มต้นดังนั้นจึงไม่จำเป็นต้องดำเนินการ
88. การรวบรวมขยะใน Java เป็นอย่างไร?
Java มีกลไกการรวบรวมขยะอัตโนมัติในตัว นอกเหนือจากกลไกในตัวแล้ว การเริ่มต้นการรวบรวมขยะด้วยตนเองสามารถทำได้โดยใช้ gc() ของคลาสระบบ
89. มีวิธีการหลักสองวิธีในชั้นเรียนหรือไม่?
ใช่ มีสองวิธีหลัก นี่ก็หมายความว่าวิธีการหลักมีมากเกินไป แต่ในขณะที่ดำเนินการ JVM จะเรียกเฉพาะวิธีการหลักดั้งเดิมเท่านั้น ไม่ใช่วิธีการหลักที่โอเวอร์โหลด
90. สามารถสืบทอดตัวแปรส่วนตัวได้หรือไม่?
ตัวแปรไพรเวตมีขอบเขตความพร้อมใช้งานเฉพาะคลาส สามารถเข้าถึงได้โดยวิธีการของคลาสที่มีอยู่เท่านั้น ดังนั้นเมื่อคลาสได้รับการสืบทอด ตัวแปรไพรเวตจะไม่ถูกสืบทอดโดยคลาสย่อย
91. สามารถเพิ่มขนาดของอาร์เรย์หลังการประกาศได้หรือไม่?
ขนาดของอาร์เรย์ java ไม่สามารถเพิ่มได้หลังจากการประกาศ นี่เป็นข้อจำกัดของอาร์เรย์ Java
92. ขนาดของอาร์เรย์ด้านล่างในหน่วยความจำคือเท่าไร?
int a[]=ใหม่ int[10];
แต่ละบล็อก int ใช้ขนาด 4 ไบต์ และมี 10 บล็อกดังกล่าวในอาร์เรย์ ดังนั้นขนาดที่อาร์เรย์ใช้ในหน่วยความจำคือ 40 ไบต์
93. java รองรับข้อมูลกี่ประเภท?
Java รองรับ 8 ชนิดข้อมูลดั้งเดิม ได้แก่ ไบต์ สั้น int ยาว ลอย สองเท่า ถ่าน บูลีน
94. จะค้นหาค่า ASCII ของอักขระใน java ได้อย่างไร?
int c=char('A') จะให้ค่า ASCII ของ A ใน java
95. จะรับสตริงเป็นอินพุตของผู้ใช้จากคอนโซลได้อย่างไร?
เราต้องยกตัวอย่างคลาสผู้อ่านอินพุตก่อน มีตัวเลือกค่อนข้างน้อย ซึ่งบางตัวเลือก ได้แก่ BufferedReader, InputStreamReader Scanner
จากนั้นสามารถใช้ฟังก์ชันการทำงานที่สัมพันธ์กันของคลาสได้ หนึ่งในคลาสที่ใช้บ่อยที่สุดคือ nextLine() ของคลาส Scanner
96. จะตรวจสอบขนาดของสตริงได้อย่างไร?
สามารถตรวจสอบขนาดของสตริงใน java ได้โดยใช้ฟังก์ชัน length()
97. เราจะจัดเรียงรายการองค์ประกอบใน Java ได้อย่างไร?
ยูทิลิตี้การเรียงลำดับในตัว sort() สามารถใช้เพื่อจัดเรียงองค์ประกอบ เรายังสามารถเขียนฟังก์ชันแบบกำหนดเองได้ แต่ขอแนะนำให้ใช้ฟังก์ชันในตัวเนื่องจากได้รับการปรับให้เหมาะสมที่สุด
98. ถ้าเราเรียงลำดับรายการสตริงจะจัดเรียงสตริงอย่างไร? สตริงจะถูกจัดเรียงตามลำดับตัวอักษรจากน้อยไปมาก
99. ความแตกต่างระหว่างการโยนและการขว้างใน Java?
Throw ใช้เพื่อโยนอินสแตนซ์ของคลาส java.lang.Throwable ซึ่งหมายความว่าคุณสามารถโยนทั้ง Error และ Exception โดยใช้คีย์เวิร์ด throw เช่น
throw new IllegalArgumentException("size must be multiple of 2")
ในอีกทางหนึ่ง การโยนถูกใช้เป็นส่วนหนึ่งของการประกาศเมธอด และส่งสัญญาณว่าข้อยกเว้นประเภทใดบ้างที่ถูกโยนโดยวิธีนี้ เพื่อให้ผู้เรียกสามารถจัดการได้ จำเป็นต้องประกาศข้อยกเว้นที่ตรวจสอบแล้วที่ไม่สามารถจัดการได้ในส่วนคำสั่งการโยนใน Java เช่นเดียวกับคำถามก่อนหน้านี้ นี่เป็นอีกคำถามสัมภาษณ์ Java ที่ถามบ่อยจากข้อผิดพลาดและหัวข้อข้อยกเว้น แต่ง่ายเกินไปที่จะตอบ
100. เราสามารถทำให้อาร์เรย์ระเหยใน Java ได้หรือไม่?
ได้ คุณสามารถทำให้อาร์เรย์ระเหยใน Java ได้ แต่มีเพียงข้อมูลอ้างอิงที่ชี้ไปยังอาร์เรย์ ไม่ใช่ทั้งอาร์เรย์ สิ่งที่ฉันหมายถึง หากเธรดหนึ่งเปลี่ยนตัวแปรอ้างอิงให้ชี้ไปที่อาร์เรย์อื่น นั่นจะเป็นการรับประกันที่ผันผวน แต่ถ้าหลายเธรดกำลังเปลี่ยนองค์ประกอบอาร์เรย์แต่ละรายการ สิ่งเหล่านี้จะไม่เกิดขึ้นก่อนที่จะมีการรับประกันโดยโมดิฟายเออร์ที่ระเหยได้
101. ฉันสามารถเก็บค่าสองเท่าในตัวแปรแบบยาวโดยไม่ต้องแคสต์ได้หรือไม่?
ไม่ได้ คุณไม่สามารถเก็บค่า double ไว้ในตัวแปรแบบยาวโดยไม่ได้แคสต์ได้ เนื่องจากช่วงของ double นั้นมีค่ามากกว่า long และเราจำเป็นต้องพิมพ์ cast ไม่ยากเลยที่จะตอบคำถามนี้ แต่นักพัฒนาหลายคนเข้าใจผิดเนื่องจากสับสนว่าอันไหนที่ใหญ่กว่าระหว่าง double และ long ใน Java
102. อันไหนจะใช้หน่วยความจำมากกว่า int หรือ Integer?
ออบเจ็กต์ Integer จะใช้หน่วยความจำมากกว่า เนื่องจาก Integer เป็นอ็อบเจ็กต์ และจัดเก็บโอเวอร์เฮดของข้อมูลเมตาเกี่ยวกับอ็อบเจ็กต์ แต่ int เป็นประเภทดั้งเดิม ดังนั้นจึงใช้พื้นที่น้อยลง
103. ความแตกต่างระหว่างคลาสสแตติกที่ซ้อนกันและคลาสระดับบนสุด?
คลาสระดับบนสุดสาธารณะต้องมีชื่อเดียวกับชื่อของไฟล์ต้นฉบับ ไม่มีข้อกำหนดดังกล่าวสำหรับคลาสสแตติกที่ซ้อนกัน คลาสที่ซ้อนกันอยู่ภายในคลาสระดับบนสุดเสมอ และคุณจำเป็นต้องใช้ชื่อของคลาสระดับบนสุดเพื่ออ้างอิงคลาสสแตติกที่ซ้อนกัน เช่น HashMap.Entry เป็นคลาสสแตติกที่ซ้อนกัน โดยที่ HashMap เป็นคลาสระดับบนสุด และ Entry คือ คลาสสแตติกที่ซ้อนกัน
104. คีย์เวิร์ดสุดท้ายมีประโยชน์อย่างไร?
คีย์เวิร์ดสุดท้ายใช้เพื่อประกาศสถานะสุดท้ายของเอนทิตีในจาวา ไม่สามารถแก้ไขค่าของเอนทิตีในขั้นตอนภายหลังในแอปพลิเคชัน เอนทิตีสามารถเป็นตัวแปร คลาส อ็อบเจ็กต์ ฯลฯ
ใช้เพื่อป้องกันการแก้ไขที่ไม่จำเป็นในแอปพลิเคชันจาวา
105. สำเนาลึกและตื้นต่างกันอย่างไร
Shallow copy ใน java จะคัดลอกค่าและคุณลักษณะทั้งหมดของอ็อบเจ็กต์ไปยังอ็อบเจ็กต์อื่น และอ็อบเจ็กต์ทั้งสองอ้างอิงตำแหน่งหน่วยความจำเดียวกัน
Deep Copy คือการสร้างวัตถุที่มีค่าและคุณลักษณะเหมือนกันของวัตถุที่กำลังคัดลอก แต่วัตถุทั้งสองอ้างอิงตำแหน่งหน่วยความจำต่างกัน
106. คอนสตรัคเตอร์เริ่มต้นมีประโยชน์อย่างไร?
ตัวสร้างเริ่มต้นคือตัวสร้างที่ได้รับการเรียกทันทีที่มีการประกาศวัตถุของคลาส คอนสตรัคเตอร์เริ่มต้นไม่มีการกำหนดพารามิเตอร์ การใช้งานทั่วไปของคอนสตรัคเตอร์เริ่มต้นอยู่ในการเริ่มต้นของตัวแปรคลาส
class ABC{ int i,j; ABC(){ i=0; j=0; } }
ที่นี่ ABC() เป็นคอนสตรัคเตอร์เริ่มต้น
107. การโคลนวัตถุคืออะไร?
การโคลนวัตถุเป็นกระบวนการสร้างสำเนาที่แน่นอนของวัตถุของคลาส สถานะของวัตถุที่สร้างขึ้นใหม่จะเหมือนกับวัตถุที่ใช้สำหรับการโคลน
clone() ใช้ในการโคลนวัตถุ การโคลนที่ทำโดยใช้วิธีการโคลนเป็นตัวอย่างของการคัดลอกแบบลึก
108. เหตุใดจึงใช้บล็อกแบบคงที่
พวกเขาทำหน้าที่หลักในการเริ่มต้นตัวแปรแบบคงที่ หากมีบล็อกสแตติกหลายบล็อก บล็อกเหล่านี้จะถูกดำเนินการตามลำดับที่เขียนในลักษณะจากบนลงล่าง
109. การใช้คีย์เวิร์ดนี้ใน java คืออะไร?
คีย์เวิร์ดนี้ใช้เพื่ออ้างอิงเอนทิตีโดยใช้อ็อบเจ็กต์ปัจจุบันใน java เป็นคีย์เวิร์ดเอนกประสงค์ที่ทำหน้าที่ต่างๆ
110. ความแตกต่างระหว่างคลาส String และ String Builder ใน java คืออะไร?
สตริงจะไม่เปลี่ยนรูปในขณะที่คลาสตัวสร้างสตริงจะเปลี่ยนแปลงได้ คลาสตัวสร้างสตริงยังซิงโครไนซ์ด้วย
111. วิธีการคำนวณขนาดของวัตถุ?
ขนาดของอ็อบเจกต์สามารถคำนวณได้โดยการรวมขนาดของตัวแปรของคลาสที่อ็อบเจกต์สร้างอินสแตนซ์จาก
หากคลาสมีจำนวนเต็ม ตัวแปรคู่ที่กำหนดไว้ในนั้น ขนาดของวัตถุของคลาสคือ size(int)+size(double)
หากมีอาร์เรย์ ขนาดของอ็อบเจ็กต์จะเป็นความยาวของอาร์เรย์*ขนาดประเภทข้อมูลของอาร์เรย์
112. == และ .equals() ต่างกันอย่างไร
“==” เป็นตัวดำเนินการ ในขณะที่ .equals() เป็นฟังก์ชัน
“==” ตรวจสอบว่าการอ้างอิงมีตำแหน่งเดียวกันหรือไม่ ในขณะที่ .equals() จะตรวจสอบว่าค่าของวัตถุทั้งสองมีค่าเท่ากันในการประเมินหรือไม่
คำถามสัมภาษณ์ Java สำหรับมืออาชีพที่มีประสบการณ์
1. การทำให้เป็นอันดับใน java คืออะไร?
Object Serialization เป็นกระบวนการที่ใช้ในการแปลงสถานะของอ็อบเจ็กต์เป็น byte stream ซึ่งสามารถคงอยู่ในดิสก์/ไฟล์ หรือส่งผ่านเครือข่ายไปยังเครื่องเสมือน Java อื่นๆ ที่ทำงานอยู่ กระบวนการย้อนกลับของการสร้างวัตถุจากสตรีมไบต์เรียกว่าดีซีเรียลไลเซชัน
2. การซิงโครไนซ์ใน java คืออะไร?
การซิงโครไนซ์เป็นกระบวนการในการจัดการการเข้าถึงทรัพยากรโดยการร้องขอหลายเธรด จุดประสงค์หลักของการซิงโครไนซ์คือเพื่อหลีกเลี่ยงการรบกวนของเธรด ในบางครั้งที่เธรดพยายามเข้าถึงทรัพยากรที่ใช้ร่วมกันมากกว่าหนึ่งเธรด เราจำเป็นต้องตรวจสอบให้แน่ใจว่าทรัพยากรจะถูกใช้โดยเธรดเดียวเท่านั้นในแต่ละครั้ง กระบวนการนี้เรียกว่าการซิงโครไนซ์ คีย์เวิร์ดการซิงโครไนซ์ใน java สร้างบล็อกของโค้ดที่อ้างถึงเป็นส่วนสำคัญ
3. สปริงในจาวาคืออะไร?
Spring Framework เป็นเฟรมเวิร์กของแอปพลิเคชันและการผกผันของคอนเทนเนอร์ควบคุมสำหรับแพลตฟอร์ม Java คุณลักษณะหลักของเฟรมเวิร์กสามารถใช้ได้กับแอปพลิเคชัน Java ใดๆ แต่มีส่วนขยายสำหรับการสร้างเว็บแอปพลิเคชันบนแพลตฟอร์ม Java EE (Enterprise Edition)
4. จะสร้างคลาสที่ไม่เปลี่ยนรูปใน java ได้อย่างไร?
- ประกาศคลาสเป็นที่สิ้นสุด ดังนั้นจึงไม่สามารถขยายเวลาได้
- ทำให้ฟิลด์ทั้งหมดเป็นส่วนตัวเพื่อไม่ให้เข้าถึงโดยตรง
- อย่าจัดเตรียมวิธี setter สำหรับตัวแปร
- ทำให้ฟิลด์ที่เปลี่ยนแปลงได้ทั้งหมดเป็นที่สิ้นสุดเพื่อให้สามารถกำหนดค่าได้เพียงครั้งเดียว
- เริ่มต้นฟิลด์ทั้งหมดผ่านคอนสตรัคเตอร์ที่ทำสำเนาลึก
- ดำเนินการโคลนอ็อบเจ็กต์ในเมธอด getter เพื่อส่งคืนสำเนา แทนที่จะส่งคืนการอ้างอิงอ็อบเจ็กต์จริง
5. เซิร์ฟเล็ตในจาวาคืออะไร?
เซิร์ฟเล็ตเป็นคลาสภาษาการเขียนโปรแกรม Java ที่ใช้ในการขยายความสามารถของเซิร์ฟเวอร์ที่โฮสต์แอปพลิเคชันที่เข้าถึงได้โดยใช้โมเดลการเขียนโปรแกรมตอบสนองคำขอ แม้ว่าเซิร์ฟเล็ตสามารถตอบสนองต่อคำขอประเภทใดก็ได้ แต่โดยทั่วไปมักใช้เพื่อขยายแอปพลิเคชันที่โฮสต์โดยเว็บเซิร์ฟเวอร์ สำหรับแอปพลิเคชันดังกล่าว เทคโนโลยี Java Servlet จะกำหนดคลาสเซิร์ฟเล็ตเฉพาะ HTTP
เซิร์ฟเล็ตทั้งหมดต้องใช้อินเทอร์เฟซ Servlet ซึ่งกำหนดวิธีวงจรชีวิต เมื่อใช้งานบริการทั่วไป คุณสามารถใช้หรือขยายคลาส GenericServlet ที่มาพร้อมกับ Java Servlet API คลาส HttpServlet มีเมธอด เช่น doGet และ doPost สำหรับจัดการบริการเฉพาะของ HTTP
6. xname class ใน java คืออะไร?
ชื่อขยาย ซึ่งประกอบด้วยชื่อเนมสเปซ (ตามดุลยพินิจ) และชื่อใกล้เคียง ตัวอย่าง XName ไม่มีการเปลี่ยนแปลงและอาจถูกแชร์
7. วิธีการแบบคงที่สามารถอ้างอิงตัวแปรที่ไม่คงที่ได้หรือไม่?
ใช่ วิธีแบบคงที่สามารถอ้างอิงตัวแปรที่ไม่คงที่ได้ สามารถทำได้โดยการสร้างวัตถุของคลาสที่เป็นตัวแปร
8. สแตติกบล็อกทำงานอย่างไรหากมีสแตติกบล็อกหลายบล็อก
บล็อกสแตติกจำนวนมากถูกดำเนินการในลำดับที่เขียนในลักษณะจากบนลงล่าง บล็อกบนสุดจะถูกดำเนินการก่อน จากนั้นจึงดำเนินการบล็อกที่ตามมา
9. เราสามารถลบล้างวิธีการคงที่ได้หรือไม่?
เมธอดแบบคงที่ไม่สามารถแทนที่ได้เนื่องจากไม่ได้ส่งไปยังอินสแตนซ์อ็อบเจ็กต์ในขณะใช้งาน ในกรณีของพวกเขา คอมไพเลอร์จะตัดสินใจว่าจะเรียกเมธอดใด
10. คลาสใดที่คลาสทั้งหมดสืบทอดมาจาก java?
คลาสทั้งหมดใน java สืบทอดมาจากคลาส Object ซึ่งเป็นซูเปอร์คลาสของทุกคลาส
11. classloader คืออะไร?
ClassLoader เป็นระบบย่อยของ JVM ซึ่งใช้ในการโหลดไฟล์คลาส เมื่อใดก็ตามที่เรารันโปรแกรมจาวา คลาสโหลดเดอร์จะถูกโหลดก่อน มีตัวโหลดคลาสในตัวสามตัวใน Java
- บูทสแตรป คลาสโหลดเดอร์: นี่คือ classloader ตัวแรกซึ่งเป็น superclass ของ Extension classloader มันโหลดไฟล์ rt.jar ซึ่งมีไฟล์คลาสทั้งหมดของ Java Standard Edition เช่นคลาสแพ็คเกจ java.lang, คลาสแพ็คเกจ java.net, คลาสแพ็คเกจ java.util, คลาสแพ็คเกจ java.io, คลาสแพ็คเกจ java.sql เป็นต้น
- ส่วนขยาย ClassLoader: นี่คือ classloader ลูกของ Bootstrap และ parent classloader ของ System classloader มันโหลดไฟล์ jar ที่อยู่ในไดเร็กทอรี $JAVA_HOME/jre/lib/ext
- ระบบ/แอปพลิเคชัน ClassLoader: นี่คือ classloader ลูกของ Extension classloader มันโหลดไฟล์คลาสจาก classpath ตามค่าเริ่มต้น classpath จะถูกตั้งค่าเป็นไดเร็กทอรีปัจจุบัน คุณสามารถเปลี่ยน classpath โดยใช้สวิตช์ “-cp” หรือ “-classpath” เรียกอีกอย่างว่า Application classloader
12. ความแตกต่างระหว่าง Serializable และ Externalizable ใน Java?
อินเทอร์เฟซแบบซีเรียลไลซ์ได้ใช้เพื่อทำให้คลาส Java เป็นแบบซีเรียลไลซ์ได้ เพื่อให้สามารถถ่ายโอนผ่านเครือข่ายหรือบันทึกสถานะบนดิสก์ได้ แต่จะใช้ประโยชน์จาก JVM ในตัวที่ทำให้ซีเรียลไลซ์เซชั่นที่เป็นค่าเริ่มต้น ซึ่งมีราคาแพง เปราะบาง และไม่ปลอดภัย Externalizable ช่วยให้คุณควบคุมกระบวนการซีเรียลไลซ์เซชั่นได้อย่างเต็มที่ ระบุรูปแบบไบนารีที่กำหนดเอง และเพิ่มมาตรการรักษาความปลอดภัยเพิ่มเติม
13. เราสามารถใช้ String ในกรณีสวิตช์ได้หรือไม่?
เราสามารถใช้ String ในกรณีของสวิตช์ได้ แต่มันเป็นเพียงน้ำตาลประโยค ใช้รหัสแฮชสตริงภายในสำหรับสวิตช์ ดูคำตอบโดยละเอียดสำหรับคำอธิบายและการอภิปรายเพิ่มเติม
14. การทำให้เป็นอนุกรมอ็อบเจ็กต์และการดีซีเรียลไลเซชันคืออะไร?
การใช้ java.io.Serializable เพื่อแปลงวัตถุเป็นลำดับไบต์เรียกว่าการทำให้เป็นอนุกรมวัตถุ Deserialization เป็นกระบวนการกู้คืนสถานะของอ็อบเจ็กต์จากไบต์สตรีม
15. ความแตกต่างระหว่างข้อยกเว้นที่ตรวจสอบและไม่ได้ตรวจสอบใน Java?
คอมไพเลอร์ตรวจสอบข้อยกเว้นที่ตรวจสอบแล้ว ณ เวลาคอมไพล์ จำเป็นสำหรับวิธีการในการจัดการข้อยกเว้นที่ตรวจสอบหรือประกาศในส่วนคำสั่งการโยน นี่คือคลาสย่อยของ Exception แต่ไม่ได้ลงมาจาก RuntimeException ข้อยกเว้นที่ไม่ได้ตรวจสอบคือลูกหลานของ RuntimeException และคอมไพเลอร์ไม่ได้ตรวจสอบในขณะที่คอมไพล์ คำถามนี้กำลังเป็นที่นิยมน้อยลง และคุณจะพบสิ่งนี้กับการสัมภาษณ์บริษัทขนาดเล็กเท่านั้น ทั้งวาณิชธนกิจและสตาร์ทอัพต่างจากคำถามนี้
16. ตัวดำเนินการ ++ นั้นปลอดภัยต่อเธรดใน Java หรือไม่
ไม่ ไม่ใช่ตัวดำเนินการที่ปลอดภัยต่อเธรดเพราะมันเกี่ยวข้องกับคำสั่งหลายอย่าง เช่น การอ่านค่า การกล่าวหา และการจัดเก็บกลับเข้าไปในหน่วยความจำ ซึ่งสามารถซ้อนทับกันได้ระหว่างหลายเธรด
17. คลาสใดมีวิธีโคลน โคลนได้หรือวัตถุ?
java.lang.Cloneable เป็นอินเตอร์เฟสตัวทำเครื่องหมาย และไม่มีเมธอด clone ที่กำหนดไว้ในคลาสอ็อบเจ็กต์ นอกจากนี้ยังทราบด้วยว่า clone() เป็นวิธีการแบบเนทีฟหมายความว่ามีการนำไปใช้ใน C หรือ C ++ หรือภาษาแม่อื่น ๆ
คำถามสัมภาษณ์การเข้ารหัส Java
1. อินเตอร์เฟสในจาวาคืออะไร?
อินเทอร์เฟซในภาษาการเขียนโปรแกรม Java เป็นประเภทนามธรรมที่ใช้ในการระบุพฤติกรรมที่คลาสต้องนำไปใช้ พวกมันคล้ายกับโปรโตคอล อินเทอร์เฟซถูกประกาศโดยใช้คำสำคัญอินเทอร์เฟซ และอาจมีเฉพาะลายเซ็นเมธอดและการประกาศคงที่เท่านั้น
2. จะประกาศอาร์เรย์ใน java ได้อย่างไร?
"To declare an array, define the variable type with square brackets: String[] cars;
We have now declared a variable that holds an array of strings. To insert values to it, we can use an array literal - place the values in a comma-separated list, inside curly braces: String[] cars = {""Volvo"", ""BMW"", ""Ford"", ""Mazda""};
To create an array of integers, you could write: int[] myNum = {10, 20, 30, 40};"
3. polymorphism ใน java คืออะไร?
Polymorphism เป็นหนึ่งในคุณสมบัติ OOPs ที่ช่วยให้เราดำเนินการสิ่งเดียวในรูปแบบต่างๆ ได้ ตัวอย่างเช่น สมมติว่าเรามีคลาส Animal ที่มีเมธอด sound() เนื่องจากคลาสนี้เป็นคลาสทั่วไป เราจึงใช้งานไม่ได้ เช่น Roar, Meow, Oink เป็นต้น เราต้องส่งข้อความทั่วไป
public class Animal{ ... public void sound(){ System.out.println(""Animal is making a sound""); }
}
Now lets say we two subclasses of Animal class: Horse and Cat that extends (see Inheritance) Animal class. We can provide the implementation to the same method like this: public class Horse extends Animal{
... @Override public void sound(){ System.out.println(""Neigh""); }
}
and public class Cat extends Animal{
... @Override public void sound(){ System.out.println(""Meow""); }
}
As you can see that although we had the common action for all subclasses sound() but there were different ways to do the same action. This is a perfect example of polymorphism (feature that allows us to perform a single action in different ways). It would not make any sense to just call the generic sound() method as each Animal has a different sound. Thus we can say that the action this method performs is based on the type of object."
4. วิธีการแปลงสตริงเป็น int ใน java?
"class Scratch{ public static void main(String[] args){ String str = ""50""; System.out.println( Integer.parseInt( str )); // Integer.parseInt() }
}"
5. วิธีการแปลง int เป็นสตริงใน java?
class Convert { public static void main(String args[]) { int a = 786; int b = -986; String str1 = Integer.toString(a); String str2 = Integer.toString(b); System.out.println(""String str1 = "" + str1); System.out.println(""String str2 = "" + str2); }
6. ทำไมสตริงจึงไม่เปลี่ยนรูปใน java?
สตริงไม่เปลี่ยนรูปใน Java เนื่องจากวัตถุสตริงถูกแคชในพูลสตริง เนื่องจากตัวอักษรสตริงที่แคชใช้ร่วมกันระหว่างไคลเอนต์หลายตัวจึงมีความเสี่ยงอยู่เสมอ ซึ่งการกระทำของลูกค้ารายหนึ่งจะส่งผลต่อไคลเอนต์อื่นทั้งหมด ตัวอย่างเช่น หากลูกค้ารายหนึ่งเปลี่ยนค่าสตริง "ABC" เป็น "abc" ไคลเอ็นต์อื่นทั้งหมดจะเห็นค่านั้นตามที่อธิบายไว้ในตัวอย่างแรก เนื่องจากการแคชวัตถุสตริงมีความสำคัญจากเหตุผลด้านประสิทธิภาพ จึงหลีกเลี่ยงความเสี่ยงนี้ได้ด้วยการทำให้คลาสสตริงไม่เปลี่ยนรูป ในเวลาเดียวกัน String ถูกทำให้เป็นขั้นสุดท้ายเพื่อไม่ให้ใครสามารถประนีประนอมกับคลาส String ได้ เช่น Immutability, Caching, การคำนวณ hashcode ฯลฯ โดยการขยายและแทนที่พฤติกรรม
7. วิธีการแปลงจำนวนเต็มเป็นสตริงใน java?
class ABC
{ public static void main(String args[]) { int a = 789; int b = 123; String str1 = Integer.toString(a); String str2 = Integer.toString(b); System.out.println(""String str1 = "" + str1); System.out.println(""String str2 = "" + str2); }
8. วิธีการคอมไพล์โปรแกรมจาวา?
เปิดหน้าต่างพรอมต์คำสั่งและไปที่ไดเร็กทอรีที่คุณบันทึกโปรแกรมจาวา (MyFirstJavaProgram. java) …
พิมพ์ 'javac MyFirstJavaProgram. java' แล้วกด Enter เพื่อคอมไพล์โค้ดของคุณ
9. วิธีการแปลงถ่านเป็นสตริงในจาวา?
public class CharToStringExample2{
public static void main(String args[]){
char c='M';
String s=Character.toString(c);
System.out.println(""String is: ""+s);
}}
10. คลาส wrapper ใน java คืออะไร?
คลาส Wrapper ใช้สำหรับแปลงประเภทข้อมูลดั้งเดิมเป็นวัตถุ เช่น int เป็น Integer เป็นต้น
11. จะวนซ้ำแผนที่ใน java ได้อย่างไร?
import java.util.Map; import java.util.HashMap; class IterationDemo { public static void main(String[] arg) { Map<String,String> m = new HashMap<String,String>(); // enter name/url pair m.put(""a"", 1); m.put(""b"", 2); m.put(""c"", 3); m.put(""d"", 4); // using for-each loop for iteration over Map.entrySet() for (Map.Entry<String,String> entry : m.entrySet()) System.out.println(""Key = "" + entry.getKey() + "", Value = "" + entry.getValue()); } }
12. วิธีแปลง char เป็น int ใน java?
public class JavaExample{ public static void main(String args[]){ char ch = '10'; int num = Integer.parseInt(String.valueOf(ch)); System.out.println(num); }
}
13. อินเทอร์เฟซในจาวาคืออะไร?
อินเทอร์เฟซใน Java คล้ายกับคลาส แต่เนื้อหาของอินเทอร์เฟซสามารถรวมได้เฉพาะเมธอดนามธรรมและฟิลด์สุดท้าย (ค่าคงที่) คลาสใช้อินเทอร์เฟซโดยจัดเตรียมรหัสสำหรับแต่ละวิธีที่ประกาศโดยอินเทอร์เฟซ
14. จะแยกสตริงใน java ได้อย่างไร?
String string = ""004-034556"";
String[] parts = string.split(""-"");
String part1 = parts[0]; // 004
String part2 = parts[1]; // 034556
14. จะอ่านไฟล์ใน java ได้อย่างไร?
import java.io.*; public class Read { public static void main(String[] args)throws Exception { File file = new File(""C:\Users\LBL\Desktop\test.txt""); BufferedReader br = new BufferedReader(new FileReader(file)); String st; while ((st = br.readLine()) != null) System.out.println(st); } }
15. วิธีการใช้เครื่องสแกนในจาวา?
import java.util.Scanner; class classname{ public methodname(){ //Scanner declaration Scanner s_name = new Scanner(System.in); //Use Scanner to take input int val = s_name.nextInt(); }
}
16. จะย้อนกลับตัวเลขใน java ได้อย่างไร?
class Reverse
{ public static void main(String args[]) { int num=564; int reverse =0; while( num != 0 ) { reverse = reverse * 10; reverse = reverse + num%10; num = num/10; } System.out.println(""Reverse is: ""+reverse); }
}
17. อินสแตนซ์ใน java คืออะไร?
ตัวแปรอินสแตนซ์ใน Java ถูกใช้โดย Objects เพื่อจัดเก็บสถานะของตน ตัวแปรที่กำหนดโดยไม่มีคีย์เวิร์ด STATIC และอยู่นอกการประกาศเมธอดใดๆ ก็ตาม เป็นการระบุเฉพาะอ็อบเจ็กต์และเรียกว่าตัวแปรอินสแตนซ์ พวกเขาถูกเรียกเช่นนั้นเนื่องจากค่าของพวกเขาเป็นอินสแตนซ์เฉพาะและไม่ได้แชร์ระหว่างอินสแตนซ์
18. วิธีการแปลง char array เป็น string ใน java?
class CharArrayToString
{ public static void main(String args[]) { // Method 1: Using String object char[] ch = {'g', 'o', 'o', 'd', ' ', 'm', 'o', 'r', 'n', 'i', 'n', 'g'}; String str = new String(ch); System.out.println(str); // Method 2: Using valueOf method String str2 = String.valueOf(ch); System.out.println(str2); }
}
19. maven ใน java คืออะไร?
Maven เป็นเครื่องมือจัดการโครงการที่มีประสิทธิภาพซึ่งใช้ POM (โมเดลอ็อบเจ็กต์ของโครงการ) ใช้สำหรับการสร้างโปรเจ็กต์ การพึ่งพา และเอกสารประกอบ
ช่วยลดความซับซ้อนของกระบวนการสร้างเช่น ANT แต่มันล้ำหน้ากว่า ANT มากเกินไป
20. อาร์เรย์ในจาวาคืออะไร?
อาร์เรย์คือออบเจ็กต์คอนเทนเนอร์ที่เก็บค่าประเภทเดียวจำนวนคงที่ ความยาวของอาร์เรย์ถูกสร้างขึ้นเมื่อสร้างอาร์เรย์ หลังจากสร้างแล้ว ความยาวจะคงที่ คุณได้เห็นตัวอย่างของอาร์เรย์แล้วในวิธีการหลักของ "Hello World!" แอปพลิเคชัน.
21. แอปเพล็ตในจาวาคืออะไร?
แอปเพล็ตเป็นโปรแกรม Java ชนิดพิเศษที่ทำงานในเบราว์เซอร์ที่เปิดใช้งาน Java นี่เป็นโปรแกรม Java ตัวแรกที่สามารถทำงานบนเครือข่ายโดยใช้เบราว์เซอร์ได้ โดยทั่วไปแล้วแอปเพล็ตจะฝังอยู่ในหน้าเว็บและทำงานในเบราว์เซอร์
กล่าวอีกนัยหนึ่ง เราสามารถพูดได้ว่าแอปเพล็ตเป็นแอปพลิเคชัน Java ขนาดเล็กที่สามารถเข้าถึงได้บนเซิร์ฟเวอร์อินเทอร์เน็ต ส่งผ่านอินเทอร์เน็ต และสามารถติดตั้งและเรียกใช้โดยอัตโนมัติโดยแยกจากเอกสารบนเว็บ
22. วิธีการแทนที่ใน java คืออะไร?
class Human{ //Overridden method public void eat() { System.out.println(""Human is eating""); }
}
class Boy extends Human{ //Overriding method public void eat(){ System.out.println(""Boy is eating""); } public static void main( String args[]) { Boy obj = new Boy(); //This will call the child class version of eat() obj.eat(); }
}
22. วิธีเช็ค Java ว่าติดตั้งแล้วหรือยัง?
- คลิกเริ่มการทำงาน
- เลือก Control Panel
- เลือกโปรแกรม
- คลิกโปรแกรมและคุณสมบัติ
- มีรายการเวอร์ชัน Java ที่ติดตั้งไว้
23. จะคืนค่าอาร์เรย์ใน java ได้อย่างไร?
import java.util.*;
public class Main
{
public static String[] return_Array() { //define string array String[] ret_Array = {""Java"", ""C++"", ""Python"", ""Ruby"", ""C""}; //return string array return ret_Array; } public static void main(String args[]) { //call method return_array that returns array String[] str_Array = return_Array(); System.out.println(""Array returned from method:"" + Arrays.toString(str_Array)); }
}
24. จะสร้างตัวเลขสุ่มใน java ได้อย่างไร?
public static double getRandomNumber(){ double x = Math.random(); return x;
}
25. ยาชื่อสามัญในจาวาคืออะไร?
Generics ช่วยให้ประเภท (คลาสและอินเทอร์เฟซ) เป็นพารามิเตอร์เมื่อกำหนดคลาส อินเตอร์เฟส และเมธอด เหมือนกับพารามิเตอร์ที่เป็นทางการที่คุ้นเคยมากกว่าที่ใช้ในการประกาศเมธอด พารามิเตอร์ type มีวิธีให้คุณใช้โค้ดเดิมซ้ำกับอินพุตที่ต่างกัน ความแตกต่างคืออินพุตของพารามิเตอร์ที่เป็นทางการคือค่า ในขณะที่อินพุตสำหรับพารามิเตอร์ประเภทคือประเภท
26. คอนสตรัคเตอร์ในจาวาคืออะไร?
ตัวสร้างใน Java เป็นวิธีการพิเศษที่ใช้ในการเริ่มต้นวัตถุ ตัวสร้างถูกเรียกเมื่อวัตถุของคลาสถูกสร้างขึ้น
27. จะหาความยาวของอาร์เรย์ใน java ได้อย่างไร?
class ArrayLengthFinder { public static void main(String[] arr) { // declare an array int[] array = new int[10]; array[0] = 12; array[1] = -4; array[2] = 1; // get the length of array int length = array.length; System.out.println(""Length of array is: "" + length); }
}
28. การเอาชนะใน java คืออะไร?
การแทนที่เมธอดเป็นกระบวนการของการแทนที่เมธอดคลาสฐานโดยเมธอดคลาสที่ได้รับพร้อมคำจำกัดความที่เจาะจงมากขึ้น
การแทนที่เมธอดจะดำเนินการก็ต่อเมื่อสองคลาสมีความสัมพันธ์แบบ is-a หมายความว่าชั้นต้องมีมรดก กล่าวอีกนัยหนึ่ง มันถูกดำเนินการระหว่างสองคลาสโดยใช้ความสัมพันธ์การสืบทอด
ในการเอาชนะ เมธอดของทั้งสองคลาสต้องมีชื่อเหมือนกันและมีจำนวนพารามิเตอร์เท่ากัน
การแทนที่เมธอดยังเรียกว่าพหุสัณฐานของรันไทม์ เนื่องจาก JVM จะตัดสินใจในการเรียกเมธอดระหว่างรันไทม์
ประโยชน์หลักของการแทนที่คือความสามารถในการกำหนดวิธีการเฉพาะสำหรับประเภทย่อยเฉพาะ
29. จะสร้างไฟล์ใน java ได้อย่างไร?
เปิดไฟล์ข้อความ บันทึกด้วยนามสกุล .java
30. ตัวแปรอินสแตนซ์ในจาวาคืออะไร?
ตัวแปรอินสแตนซ์ใน Java ถูกใช้โดย Objects เพื่อจัดเก็บสถานะของตน ตัวแปรที่กำหนดโดยไม่มีคีย์เวิร์ด STATIC และอยู่นอกการประกาศเมธอดใดๆ ก็ตาม เป็นการระบุเฉพาะอ็อบเจ็กต์และเรียกว่าตัวแปรอินสแตนซ์ พวกเขาถูกเรียกเช่นนั้นเนื่องจากค่าของพวกเขาเป็นอินสแตนซ์เฉพาะและไม่ได้แชร์ระหว่างอินสแตนซ์
31. จะวนซ้ำ hashmap ใน java ได้อย่างไร?
import java.util.Map; import java.util.HashMap; class IterationDemo { public static void main(String[] arg) { Map<String,String> g = new HashMap<String,String>(); // enter name/url pair g.put(""1"":""One""); g.put(""2"":""Two""); // using for-each loop for iteration over Map.entrySet() for (Map.Entry<String,String> entry : g.entrySet()) System.out.println(""Key = "" + entry.getKey() + "", Value = "" + entry.getValue()); } }
32. จะแยกสตริงใน java ได้อย่างไร?
public class JavaExample{ public static void main(String args[]){ String s = "" ,ab;gh,bc;pq#kk$bb""; String[] str = s.split(""[,;#$]""); //Total how many substrings? The array length System.out.println(""Number of substrings: ""+str.length); for (int i=0; i < str.length; i++) { System.out.println(""Str[""+i+""]:""+str[i]); } }
}
33. วิธีการจัดเรียงอาร์เรย์ใน java?
public class InsertSort { public static void main (String [] args) { int [] array = {10,20,30,60,70,80,2,3,1}; int temp; for (int i = 1; i < array.length; i++) { for (int j = i; j > 0; j--) { if (array[j] < array [j - 1]) { temp = array[j]; array[j] = array[j - 1]; array[j - 1] = temp; } } } for (int i = 0; i < array.length; i++) { System.out.println(array[i]); } }
}
34. เหตุใดวิธีการหลักจึงคงที่ใน java
เมธอด Java main() เป็นแบบสแตติกเสมอ ดังนั้นคอมไพเลอร์จึงสามารถเรียกใช้ได้โดยไม่ต้องสร้างอ็อบเจ็กต์หรือก่อนสร้างอ็อบเจ็กต์ในคลาส ในโปรแกรม Java ใดๆ เมธอด main() คือจุดเริ่มต้นที่คอมไพเลอร์เริ่มการทำงานของโปรแกรม ดังนั้นคอมไพเลอร์จึงต้องเรียกใช้เมธอด main()
35. จะย้อนกลับสตริงใน java ทีละคำได้อย่างไร?
import java.util.*;
class ReverseString
{ public static void main(String args[]) { String original, reverse = """"; Scanner in = new Scanner(System.in); System.out.println(""Enter a string to reverse""); original = in.nextLine(); int length = original.length(); for (int i = length - 1 ; i >= 0 ; i--) reverse = reverse + original.charAt(i); System.out.println(""Reverse of the string: "" + reverse); }
}
36. วิธีการแปลงสตริงเป็นวันที่ใน java?
String string = ""January 2, 2010"";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(""MMMM d, yyyy"", Locale.ENGLISH);
LocalDate date = LocalDate.parse(string, formatter);
System.out.println(date); // 2010-01-02
37. จะอ่านสตริงใน java ได้อย่างไร?
Scanner sc= new Scanner(System.in); //System.in is a standard input stream.
System.out.print(""Enter a string: "");
String str= sc.nextLine(); //reads string.
38. วิธีการแปลงสตริงเป็นจำนวนเต็มใน java?
String string1 = ""100"";
String string2 = ""50"";
String string3 = ""20""; int number1 = Integer.decode(string1);
int number2 = Integer.decode(string2); int number3 = Integer.decode(string3); System.out.println(""Parsing String """" + string1 + """": "" + number2);
System.out.println(""Parsing String """" + string2 + """": "" + number2);
System.out.println(""Parsing String """" + string3 + """": "" + number3);
39. วิธีการเรียงลำดับ arraylist ใน java?
import java.util.*;
public class ArrayListOfInteger { public static void main(String args[]){ ArrayList<Integer> arraylist = new ArrayList<Integer>(); arraylist.add(11); arraylist.add(2); arraylist.add(7); arraylist.add(3); /* ArrayList before the sorting*/ System.out.println(""Before Sorting:""); for(int counter: arraylist){ System.out.println(counter); } /* Sorting of arraylist using Collections.sort*/ Collections.sort(arraylist); /* ArrayList after sorting*/ System.out.println(""After Sorting:""); for(int counter: arraylist){ System.out.println(counter); } }
}
40. จะหาความยาวของสตริงใน java ได้อย่างไร?
ในการคำนวณความยาวของสตริงใน Java คุณสามารถใช้เมธอด inbuilt length() ของคลาสสตริง Java
ใน Java สตริงคืออ็อบเจ็กต์ที่สร้างโดยใช้คลาสสตริง และเมธอด length() เป็นเมธอดสาธารณะของคลาสนี้ ดังนั้น ตัวแปรประเภทสตริงใด ๆ สามารถเข้าถึงวิธีนี้ได้โดยใช้นามสกุล . (จุด) ตัวดำเนินการ
length() วิธีการนับจำนวนอักขระทั้งหมดในสตริง
41. ชนิดข้อมูลในจาวาคืออะไร?
ชนิดข้อมูลใน java ระบุประเภทของค่าที่ตัวแปรใน java สามารถจัดเก็บได้
42. hashmap ใน java คืออะไร?
HashMap เป็นคลาสคอลเล็กชันตามแผนที่ที่ใช้สำหรับจัดเก็บคู่คีย์ & ค่า ซึ่งแสดงเป็น HashMap หรือ HashMap . คลาสนี้ไม่รับประกันลำดับของแผนที่ คล้ายกับคลาส Hashtable ยกเว้นว่าจะไม่มีการซิงโครไนซ์และอนุญาตให้มีค่า Null (ค่า Null และคีย์ null)
43. สตรีมในจาวาคืออะไร?
สตรีมใน Java สามารถกำหนดเป็นลำดับขององค์ประกอบจากแหล่งที่มา สตรีมสนับสนุนการดำเนินการรวมในองค์ประกอบ แหล่งที่มาขององค์ประกอบในที่นี้หมายถึงคอลเล็กชันหรืออาร์เรย์ที่ให้ข้อมูลกับสตรีม
สตรีมจะรักษาลำดับขององค์ประกอบเหมือนกับการเรียงลำดับในแหล่งที่มา การดำเนินการรวมเป็นการดำเนินการที่ช่วยให้เราสามารถแสดงการจัดการทั่วไปในองค์ประกอบสตรีมได้อย่างรวดเร็วและชัดเจน
44. วิธีการแปลง double เป็น string ใน java?
public class D2S{
public static void main(String args[]){
double d=1.2222222;
String s=Double. toString(d);
System. out. println(s);
}}
45. จะประกาศอาร์เรย์ใน java ได้อย่างไร?
int arr[]=new int[10];
46. จะแทนที่อักขระในสตริงใน java ได้อย่างไร?
การแทนที่สตริง (char oldChar, char newChar): มันแทนที่การเกิดขึ้นทั้งหมดของอักขระ oldChar ด้วยอักขระ newChar สำหรับเช่น “pog pance”.replace('p', 'd') จะกลับมาเต้นสุนัข
47. นิพจน์แลมบ์ดาในจาวาคืออะไร?
นิพจน์แลมบ์ดา (แลมบ์ดา) อธิบายกลุ่มของรหัส (ฟังก์ชันที่ไม่ระบุชื่อ) ที่สามารถส่งผ่านไปยังตัวสร้างหรือวิธีการสำหรับการดำเนินการในภายหลัง ตัวสร้างหรือเมธอดรับแลมบ์ดาเป็นอาร์กิวเมนต์ พิจารณาตัวอย่างต่อไปนี้:
System.out.println (“สวัสดี”)
ตัวอย่างนี้ระบุแลมบ์ดาสำหรับการส่งข้อความไปยังเอาต์พุตสตรีมมาตรฐาน จากซ้ายไปขวา () ระบุรายการพารามิเตอร์ที่เป็นทางการของแลมบ์ดา (ไม่มีพารามิเตอร์ในตัวอย่าง) -> ระบุว่านิพจน์เป็นแลมบ์ดา และ System.out.println("สวัสดี") เป็นโค้ดที่จะดำเนินการ .
48. microservices java คืออะไร?
Microservices คือรูปแบบหนึ่งของรูปแบบสถาปัตยกรรมที่เน้นการบริการ (ทักษะที่สำคัญที่สุดอย่างหนึ่งสำหรับนักพัฒนา Java) โดยที่แอปพลิเคชันจะถูกสร้างขึ้นเป็นคอลเล็กชันของบริการขนาดเล็กต่างๆ มากกว่าที่จะเป็นแอปทั้งหมดเพียงแอปเดียว
49. jsp ในจาวาคืออะไร?
หน้า JSP เป็นเอกสารข้อความที่มีข้อความสองประเภท: ข้อมูลแบบคงที่ ซึ่งสามารถแสดงในรูปแบบข้อความใดก็ได้ (เช่น HTML, SVG, WML และ XML) และองค์ประกอบ JSP ซึ่งสร้างเนื้อหาแบบไดนามิก
นามสกุลไฟล์ที่แนะนำสำหรับไฟล์ต้นฉบับของเพจ JSP คือ .jsp หน้าสามารถประกอบด้วยไฟล์บนสุดที่มีไฟล์อื่นๆ ที่มีหน้า JSP ที่สมบูรณ์หรือส่วนย่อยของหน้า JSP นามสกุลที่แนะนำสำหรับไฟล์ต้นฉบับของแฟรกเมนต์ของเพจ JSP คือ .jspf
อิลิเมนต์ JSP ในหน้า JSP สามารถแสดงในรูปแบบสองรูปแบบ คือ มาตรฐานและ XML แม้ว่าไฟล์ใดๆ ก็ตามจะสามารถใช้รูปแบบเดียวได้ หน้า JSP ในไวยากรณ์ XML เป็นเอกสาร XML และสามารถจัดการได้โดยเครื่องมือและ API สำหรับเอกสาร XML
50. การใช้ Constructor ใน Java คืออะไร?
ตัวสร้างคือกลุ่มของรหัสที่เริ่มต้นวัตถุที่สร้างขึ้นใหม่ คอนสตรัคเตอร์คล้ายกับเมธอดของอินสแตนซ์ใน java แต่ไม่ใช่เมธอดเนื่องจากไม่มีประเภทส่งคืน ใน Constructor สั้น ๆ และ method นั้นแตกต่างกัน (เพิ่มเติมเกี่ยวกับเรื่องนี้ในตอนท้ายของคู่มือนี้) ผู้คนมักอ้างถึง Constructor ว่าเป็นวิธีการพิเศษใน Java
ตัวสร้างมีชื่อเดียวกับคลาสและมีลักษณะเช่นนี้ในโค้ดจาวา
51. วิธีการแปลงรายการเป็นอาร์เรย์ในจาวา?
วิธีที่ดีที่สุดและง่ายที่สุดในการแปลง List เป็น Array ใน Java คือการใช้วิธี .toArray()
ในทำนองเดียวกัน เราสามารถแปลงรายการกลับเป็นอาร์เรย์โดยใช้เมธอด Arrays.asList()
ตัวอย่างด้านล่างแสดงวิธีการแปลง List of String และ List of Integers เป็น Array ที่เทียบเท่ากัน
Convert List to Array of String
import java.util.ArrayList;
import java.util.List; public class ConvertArrayListToArray { public static void main(String[] args) { List<String> itemList = new ArrayList<String>(); itemList.add(""item1""); itemList.add(""item2""); itemList.add(""item3""); String[] itemsArray = new String[itemList.size()]; itemsArray = itemList.toArray(itemsArray); for(String s : itemsArray) System.out.println(s); }
}"
52. มีวิธีสร้างวัตถุใน java กี่วิธี?
มีห้าวิธีในการสร้างวัตถุใน Java:
- Java โอเปอเรเตอร์ใหม่
- จาวาคลาส newInstance() วิธีการ
- Java newInstance() วิธีการของตัวสร้าง
- วัตถุจาวา โคลน () วิธีการ
- Java Object Serialization และ Deserialization
53. ทำไม java ถึงใช้งานได้ (java 8)?
Java 8 เพิ่มการเขียนโปรแกรมเชิงฟังก์ชันผ่านสิ่งที่เรียกว่านิพจน์แลมบ์ดา ซึ่งเป็นวิธีง่ายๆ ในการอธิบายฟังก์ชันเป็นการดำเนินการบางอย่างบนชุดตัวแปรที่จัดให้โดยพลการ
54. การสืบทอดใดที่ไม่สนับสนุนใน java?
ไม่รองรับการสืบทอดหลายรายการใน Java
55. วิธีแปลง double เป็น int ใน java?
double d=1.2
int i=int(d)
56. จะรับค่า ASCII ของ char ใน java ได้อย่างไร?
char character = 'a'; int ascii = (int) character;
ในกรณีของคุณ คุณต้องรับอักขระเฉพาะจากสตริงก่อนแล้วจึงทำการแคสต์
char character = name.charAt(0); // This gives the character 'a'
int ascii = (int) character; // ascii is now 97.
57. จะประกาศอาร์เรย์สตริงใน java ได้อย่างไร?
String[] array = new String[] {"a", "b"};
58. ส่วนต่อประสานเครื่องหมายใน java คืออะไร?
อินเทอร์เฟซว่างใน Java เรียกว่าอินเทอร์เฟซตัวทำเครื่องหมาย กล่าวคือ ไม่มีเมธอดหรือฟิลด์ใดๆ โดยการใช้อินเทอร์เฟซเหล่านี้ คลาสจะแสดงพฤติกรรมพิเศษเกี่ยวกับอินเทอร์เฟซที่ใช้งาน หากคุณดูอย่างระมัดระวังบนส่วนต่อประสานตัวทำเครื่องหมายใน Java เช่น Serializable, Cloneable และ Remote ดูเหมือนว่าจะใช้เพื่อระบุสิ่งที่คอมไพเลอร์หรือ JVM ดังนั้นหาก JVM เห็นว่า Class เป็นแบบ Serializable จะทำการดำเนินการพิเศษบางอย่างในลักษณะเดียวกันหาก JVM เห็น Class หนึ่งใช้งาน Clonnable จะทำการดำเนินการบางอย่างเพื่อรองรับการโคลน เช่นเดียวกับ RMI และอินเทอร์เฟซระยะไกล ในอินเทอร์เฟซ Marker ที่ง่ายที่สุด ระบุ สัญญาณหรือคำสั่งไปยัง Compiler หรือ JVM
-> ในทางปฏิบัติ เราสามารถสร้างอินเทอร์เฟซเหมือนส่วนต่อประสานตัวทำเครื่องหมายโดยไม่มีการประกาศวิธีการ แต่มันไม่ใช่ส่วนต่อประสานตัวทำเครื่องหมายเลยเนื่องจากไม่ได้สั่งอะไรบางอย่างให้กับ JVM ที่ให้พฤติกรรมพิเศษแก่คลาสเมื่อโปรแกรมของเรากำลังจะดำเนินการ .
ตัวอย่างเช่น Serializable, Cloneable ฯลฯ .. เป็นอินเตอร์เฟสตัวทำเครื่องหมาย
เมื่อโปรแกรมของฉันถูกเรียกใช้งาน JVM จะมอบพลังพิเศษบางอย่างให้กับชั้นเรียนของฉัน ซึ่งได้ติดตั้ง Marker Interfaces
59. จะรับอินพุตหลายสตริงใน java โดยใช้สแกนเนอร์ได้อย่างไร?
class MyClass { public static void main(String[ ] args) { Scanner a = new Scanner(System.in); //Scanner b = new Scanner(System.in); System.out.println (a.nextLine()); System.out.println(a.nextLine()); }
} Then type this way:
a
b
60. จะเชื่อมสองสตริงใน java ได้อย่างไร?
s3=s1+s2 โดยที่ s1 และ s2 เป็นสตริงจาวา
61. วิธีการแปลงสตริงเป็นอาร์เรย์ถ่านในจาวา?
public class StringToCharArrayExample{ public static void main(String args[]){ String s1=""hello""; char[] ch=s1.toCharArray(); for(int i=0;i<ch.length;i++){ System.out.print(ch[i]); } }}
62. type cast ใน java คืออะไร?
กระบวนการแปลงค่าของข้อมูลประเภทหนึ่ง (int, float, double ฯลฯ) เป็นประเภทข้อมูลอื่นเรียกว่า typecasting
63. จะเรียงลำดับสตริงใน java ได้อย่างไร?
import java.util.Arrays; public class Test
{ public static void main(String[] args) { String original = ""edcba""; char[] chars = original.toCharArray(); Arrays.sort(chars); String sorted = new String(chars); System.out.println(sorted); }
}
64. จะป้อนสตริงใน java ได้อย่างไร?
import java.util.*; class Inp
{ public static void main(String[] args) { Scanner sc= new Scanner(System.in); //System.in is a standard input stream System.out.print(""Enter a string: ""); String str= sc.nextLine(); //reads string System.out.print(""You have entered: ""+str); } }
65. วิธีการนำเข้าเครื่องสแกนใน java?
import java.utils.Scanner
Scanner sc=new Scanner();
66. จะลบอักขระพิเศษออกจากสตริงใน java ได้อย่างไร?
class New { public static void main(String args[]) { String str= ""This#string%contains^special*characters&.""; str = str.replaceAll(""[^a-zA-Z0-9]"", "" ""); System.out.println(str); } }
67. จะหาความยาวของสตริงใน java ได้อย่างไร?
ในการหาความยาวของสตริงใน Java คุณสามารถใช้เทคนิค inbuilt length() สำหรับคลาสสตริง Java
ใน Java สตริงคืออ็อบเจ็กต์ที่สร้างขึ้นโดยใช้คลาสสตริง และกลยุทธ์ length() เป็นเทคนิคส่วนเปิดสำหรับคลาสนี้ ตามบรรทัดเหล่านี้ ปัจจัยของสตริงประเภทใด ๆ สามารถเข้าสู่กลยุทธ์นี้ได้โดยใช้นามสกุล . (จุด) ผู้ดูแลระบบ
เทคนิค length() จะนับจำนวนอักขระทั้งหมดในสตริง
68. จะเพิ่มองค์ประกอบในอาร์เรย์ใน java ได้อย่างไร?
แปลงอาร์เรย์เป็น arraylist จากนั้นสามารถเพิ่มองค์ประกอบได้
69. การจัดการข้อยกเว้นใน java คืออะไร?
การจัดการข้อยกเว้นใน Java เป็นวิธีที่จะทำให้โปรแกรมทำงานต่อไปได้ แม้ว่าจะมีข้อผิดพลาดเกิดขึ้นก็ตาม ข้อยกเว้นคือเหตุการณ์ข้อผิดพลาดที่อาจเกิดขึ้นระหว่างการทำงานของโปรแกรมและขัดขวางการทำงานปกติของโปรแกรม Java จัดเตรียมวิธีที่มีประสิทธิภาพและมุ่งเน้นวัตถุเพื่อจัดการกับสถานการณ์ข้อยกเว้นที่เรียกว่า Java Exception Handling
70. จะสแกนสตริงใน java ได้อย่างไร?
import java.util.*;
public class ScannerExample {
public static void main(String args[]){
Scanner in = new Scanner(System.in);
System.out.print(""Enter your name: "");
String name = in.nextLine();
System.out.println(""Name is: "" + name);
in.close();
71. เมื่อใดควรใช้การเปรียบเทียบและตัวเปรียบเทียบใน java พร้อมตัวอย่าง?
ในกรณีที่ต้องการเรียงลำดับที่แตกต่างกัน เขาสามารถใช้ตัวเปรียบเทียบและกำหนดวิธีการเปรียบเทียบสองอินสแตนซ์ของตัวเองได้ หากการเรียงลำดับของอ็อบเจ็กต์จำเป็นต้องเป็นไปตามลำดับตามธรรมชาติ ให้ใช้ Comparable ในขณะที่ถ้าคุณจำเป็นต้องทำการเรียงลำดับตามคุณสมบัติของอ็อบเจกต์ที่แตกต่างกัน ให้ใช้ตัวเปรียบเทียบใน Java
72. จะสร้างไฟล์ jar ใน java ได้อย่างไร?
รูปแบบพื้นฐานของคำสั่งสำหรับสร้างไฟล์ JAR คือ:
jar cf ไฟล์ jar อินพุตไฟล์
ตัวเลือกและอาร์กิวเมนต์ที่ใช้ในคำสั่งนี้คือ:
- ตัวเลือก c ระบุว่าคุณต้องการสร้างไฟล์ JAR
- ตัวเลือก f ระบุว่าคุณต้องการให้เอาต์พุตไปที่ไฟล์แทนที่จะไปที่ stdout
jar-file คือชื่อที่คุณต้องการให้ไฟล์ JAR ที่เป็นผลลัพธ์มี คุณสามารถใช้ชื่อไฟล์ใดก็ได้สำหรับไฟล์ JAR ตามแบบแผน ชื่อไฟล์ JAR จะได้รับนามสกุล .jar แม้ว่าจะไม่จำเป็นก็ตาม
อาร์กิวเมนต์ input-file(s) คือรายการที่คั่นด้วยช่องว่างของไฟล์ตั้งแต่หนึ่งไฟล์ขึ้นไปที่คุณต้องการรวมไว้ในไฟล์ JAR ของคุณ อาร์กิวเมนต์ไฟล์อินพุตสามารถมีสัญลักษณ์ตัวแทน * หาก "input-files" เป็นไดเร็กทอรี เนื้อหาของไดเร็กทอรีเหล่านั้นจะถูกเพิ่มไปยังไฟล์เก็บถาวร JAR แบบเรียกซ้ำ
ตัวเลือก c และ f สามารถปรากฏในลำดับใดก็ได้ แต่ต้องไม่มีช่องว่างระหว่างตัวเลือก
73. จะเรียกวิธีการใน java ได้อย่างไร?
ในการเรียกใช้เมธอดใน Java ให้เขียนชื่อของเมธอดตามด้วยวงเล็บสองอัน () และอัฒภาค กระบวนการเรียกเมธอดนั้นง่าย เมื่อโปรแกรมเรียกใช้เมธอด การควบคุมโปรแกรมจะถูกโอนไปยังเมธอดที่เรียก
74. ความแตกต่างระหว่าง next () และ nextline () ใน java คืออะไร?
next() สามารถอ่านอินพุตได้จนถึงช่องว่างเท่านั้น มันอ่านคำสองคำที่คั่นด้วยช่องว่างไม่ได้ นอกจากนี้ next() วางเคอร์เซอร์ในบรรทัดเดียวกันหลังจากอ่านอินพุต nextLine() อ่านอินพุตรวมถึงช่องว่างระหว่างคำ (นั่นคืออ่านจนจบบรรทัด n)
75. mvc ใน java คืออะไร?
รูปแบบ MVC แสดงถึงรูปแบบ Model-View-Controller ตัวอย่างนี้ใช้เพื่อแยกความสนใจของแอปพลิเคชัน Model – Model พูดกับสิ่งของหรือ JAVA POJO กำลังส่งข้อมูล นอกจากนี้ยังสามารถมีเหตุผลในการรีเฟรชตัวควบคุมได้หากข้อมูลมีการเปลี่ยนแปลง
76. จะวนซ้ำแผนที่ใน java ได้อย่างไร?
for (Map.Entry<Integer, String> entry : hm.entrySet()) { Integer key = entry.getKey(); String value = entry.getValue(); }
77. ปัญหาเพชรใน java คืออะไร?
“ปัญหาเพชร” เป็นความไม่แน่นอนที่อาจเกิดขึ้นจากการยอมให้มรดกต่างๆ เป็นปัญหาสำคัญสำหรับภาษาถิ่น (เช่น C ++) ที่คำนึงถึงมรดกของรัฐมากมาย อย่างไรก็ตาม ใน Java มรดกจำนวนมากไม่ได้พิจารณาถึงคลาสต่าง ๆ เพียงสำหรับอินเทอร์เฟซ และไม่มีสถานะ
78. จะสลับสองสตริงใน java ได้อย่างไร?
String a = ""one"";
String b = ""two""; a = a + b;
b = a.substring(0, (a.length() - b.length()));
a = a.substring(b.length()); System.out.println(""a = "" + a);
System.out.println(""b = "" + b);
79. วิธีการแปลงสตริงเป็นวันที่ใน java ในรูปแบบ yyyy-mm-dd?
String start_dt = ""2011-01-01"";
DateFormat formatter = new SimpleDateFormat(""yyyy-MM-DD""); Date date = (Date)formatter.parse(start_dt);
SimpleDateFormat newFormat = new SimpleDateFormat(""MM-dd-yyyy"");
String finalString = newFormat.format(date);
80. getname ใน java คืออะไรพร้อมตัวอย่าง?
import java.io.*; public class solution { public static void main(String args[]) { // try-catch block to handle exceptions try { // Create a file object File f = new File(""new.txt""); // Get the Name of the given file f String Name = f.getName(); // Display the file Name of the file object System.out.println(""File Name : "" + Name); } catch (Exception e) { System.err.println(e.getMessage()); } } }
getName ส่งคืนชื่อของไฟล์
81. bufferreader ใน java คืออะไร?
คลาส Java.io.BufferedReader อ่านข้อความจากสตรีมอินพุตอักขระ บัฟเฟอร์อักขระเพื่อรองรับการอ่านอักขระ คลัสเตอร์ และบรรทัดที่เชี่ยวชาญ ต่อไปนี้คือจุดเน้นที่สำคัญใน BufferedReader - ขนาดของแท่นวางอาจถูกกำหนด หรือขนาดเริ่มต้นอาจถูกใช้
82. จะสร้างแพ็คเกจใน java ได้อย่างไร?
ในการสร้างบันเดิล คุณเลือกชื่อสำหรับบันเดิล (การตั้งชื่อรายการจะพูดถึงในพื้นที่ต่อไปนี้) และใส่การรวมกลุ่มที่มีชื่อนั้นไว้ที่ส่วนหัวของเรคคอร์ดต้นทางแต่ละรายการที่มีการเรียงลำดับ (คลาส อินเตอร์เฟส รายการ และ ประเภทคำอธิบาย) ที่คุณต้องจำสำหรับบันเดิล
83. การรวมใน java คืออะไร?
กรณีการรวมเป็นนักเรียนในชั้นเรียนโรงเรียนเมื่อโรงเรียนปิด นักเรียนทั้งๆ ที่มีทุกอย่างอยู่แล้วและหลังจากนั้นสามารถเข้าร่วมโรงเรียนอื่นหรืออะไรทำนองนั้น ในเอกสารประกอบของ UML โครงสร้างมีความหมายด้วยอัญมณีที่เติม ในขณะที่การรวมกลุ่มจะถูกระบุด้วยอัญมณีที่ไม่สำเร็จ ซึ่งแสดงให้เห็นถึงความแตกต่างที่ปฏิเสธไม่ได้เกี่ยวกับคุณภาพของความสัมพันธ์
84. วิธีการใช้ switch case ใน java?
int amount = 9; switch(amount) { case 0 : System.out.println(""amount is 0""); break; case 5 : System.out.println(""amount is 5""); break; case 10 : System.out.println(""amount is 10""); break; default : System.out.println(""amount is something else"");
}
85. การเรียกซ้ำในจาวาคืออะไร?
การเรียกซ้ำเป็นเพียงกลยุทธ์ในการตัดสินใจเกี่ยวกับความสามารถ วิธีนี้ให้แนวทางในการแยกประเด็นที่พัวพันเป็นประเด็นที่ตรงไปตรงมาซึ่งง่ายต่อการจัดการ
86. จะพิมพ์อาร์เรย์ใน java ได้อย่างไร?
System.out.println(Arrays.toString(ก));
87. autoboxing และ unboxing ใน java คืออะไร?
Autoboxing คือการแปลงอัตโนมัติที่คอมไพเลอร์ Java สร้างระหว่างประเภทดั้งเดิมและคลาส wrapper อ็อบเจ็กต์ที่เกี่ยวข้อง ตัวอย่างเช่น การแปลง int เป็นจำนวนเต็ม, จากสองเท่าเป็นสองเท่า และอื่นๆ หากการแปลงเป็นอย่างอื่น จะเรียกว่าการแกะกล่อง
88. ตัวสร้างจาวาคืนค่า แต่อะไรนะ?
ตัวสร้าง Java ไม่คืนค่าใด ๆ
89. วิธีการโอเวอร์โหลดในจาวาคืออะไร?
การโอเวอร์โหลดเมธอดเป็นคุณลักษณะที่ช่วยให้คลาสมีเมธอดมากกว่าหนึ่งเมธอดที่มีชื่อเดียวกัน หากรายการอาร์กิวเมนต์ต่างกัน คล้ายกับคอนสตรัคเตอร์โอเวอร์โหลดใน Java ที่ช่วยให้คลาสมีคอนสตรัคเตอร์มากกว่าหนึ่งรายการที่มีรายการอาร์กิวเมนต์ที่แตกต่างกัน
90. จะสร้างอาร์เรย์ของวัตถุใน java ได้อย่างไร?
วิธีหนึ่งในการเริ่มต้นอาร์เรย์ของวัตถุคือการใช้ตัวสร้าง เมื่อคุณสร้างอ็อบเจ็กต์จริง คุณสามารถกำหนดค่าเริ่มต้นให้กับแต่ละอ็อบเจ็กต์ได้โดยการส่งผ่านค่าไปยังคอนสตรัคเตอร์ คุณยังสามารถมีเมธอดสมาชิกแยกต่างหากในคลาสที่จะกำหนดข้อมูลให้กับออบเจกต์
91. เมื่อใดควรใช้คลาสนามธรรมและอินเตอร์เฟสใน java?
Java มีตัวระบุการเข้าถึงสี่ประเภทที่เราสามารถใช้ได้กับคลาสและเอนทิตีอื่นๆ
เหล่านี้คือ:
#1) ค่าเริ่มต้น: เมื่อใดก็ตามที่ไม่ได้ระบุระดับการเข้าถึงเฉพาะ จะถือว่าเป็น 'ค่าเริ่มต้น' ขอบเขตของระดับเริ่มต้นอยู่ภายในแพ็คเกจ
#2) สาธารณะ: นี่คือระดับการเข้าถึงทั่วไป และเมื่อใดก็ตามที่มีการใช้ตัวระบุการเข้าถึงสาธารณะกับเอนทิตี เอนทิตีเฉพาะนั้นสามารถเข้าถึงได้จากภายในหรือภายนอกคลาส ภายในหรือภายนอกแพ็คเกจ ฯลฯ
#3) ป้องกัน: ระดับการเข้าถึงที่ได้รับการป้องกันมีขอบเขตที่อยู่ภายในแพ็คเกจ เอนทิตีที่ได้รับการป้องกันยังสามารถเข้าถึงได้นอกแพ็คเกจผ่านคลาสที่สืบทอดมาหรือคลาสย่อย
#4) ส่วนตัว: เมื่อเอนทิตีเป็นแบบส่วนตัว เอนทิตีนี้จะไม่สามารถเข้าถึงได้นอกคลาส นิติบุคคลส่วนตัวสามารถเข้าถึงได้จากภายในชั้นเรียนเท่านั้น
92. จะสร้างคลาสซิงเกิลตันใน java ได้อย่างไร?
คลาส Singleton หมายความว่าคุณสามารถสร้างได้เพียงหนึ่งอ็อบเจ็กต์สำหรับคลาสที่กำหนด คุณสามารถสร้างคลาสซิงเกิลตันได้โดยทำให้คอนสตรัคเตอร์เป็นแบบส่วนตัว เพื่อให้คุณสามารถจำกัดการสร้างอ็อบเจ็กต์ได้ จัดเตรียมเมธอดแบบสแตติกเพื่อรับอินสแตนซ์ของอ็อบเจ็กต์ ซึ่งคุณสามารถจัดการการสร้างอ็อบเจ็กต์ภายในคลาสเท่านั้น ในตัวอย่างนี้ เรากำลังสร้างวัตถุโดยใช้บล็อกแบบคงที่
public class MySingleton { private static MySingleton myObj; static{ myObj = new MySingleton(); } private MySingleton(){ } public static MySingleton getInstance(){ return myObj; } public void testMe(){ System.out.println(""Hey.... it is working!!!""); } public static void main(String a[]){ MySingleton ms = getInstance(); ms.testMe(); }
}
93. วิธีสแตติกในจาวาคืออะไร?
การเขียนโปรแกรม Java การเขียนโปรแกรมเชิง Java8Object คำหลักแบบคงที่ใช้เพื่อสร้างวิธีการที่จะมีอยู่โดยไม่ขึ้นกับอินสแตนซ์ใดๆ ที่สร้างขึ้นสำหรับชั้นเรียน เมธอดสแตติกไม่ใช้ตัวแปรอินสแตนซ์ของอ็อบเจ็กต์ใดๆ ของคลาสที่ถูกกำหนดไว้
94. อธิบายกลไกจัดการข้อยกเว้นของ Java?
คลาสข้อยกเว้นสืบทอดจากคลาส Throwable ใน java Java มีกลไก try-catch สำหรับจัดการข้อยกเว้นโดยไม่สร้างเป็นข้อผิดพลาด
public class Exception_Handling { String gender; Exception_Handling(String s){ gender=s; } void Check_Gender(String s) throws GenderException{ if (gender!="Male" || gender!="Female") throw new GenderException("Gender Invalid"); else System.out.println("Gender valid"); } public static void main(String args[]){ Exception_Handling n=new Exception_Handling("None"); try{ n.Check_Gender("Female"); }catch (Exception e){ System.out.println("Exception : "+e); } } } class GenderException extends Exception{ GenderException(String s){ super(s); } }
95. เราจะใช้รายการ Array เมื่อใด
เมื่อใดก็ตามที่มีความจำเป็นในการเข้าถึงโดยสุ่มขององค์ประกอบใน java เราใช้ ArrayList วิธีรับและตั้งค่าช่วยให้เข้าถึงองค์ประกอบได้อย่างรวดเร็วโดยใช้รายการอาร์เรย์
96. การใช้ generics ใน Java คืออะไร?
Generics อนุญาตให้คลาสและอินเทอร์เฟซเป็นประเภทสำหรับคำจำกัดความของคลาสใหม่ใน java ซึ่งช่วยให้ตรวจสอบประเภทที่แข็งแกร่งยิ่งขึ้น นอกจากนี้ยังลบล้างความน่าจะเป็นของประเภทข้อมูลที่ไม่ตรงกันขณะแทรก
97. ตัววนซ้ำคืออะไร?
ตัววนซ้ำเป็นฟังก์ชันเฟรมเวิร์กคอลเลกชั่นที่ช่วยให้เข้าถึงองค์ประกอบได้ตามลำดับ การเข้าถึงสามารถทำได้ในทิศทางเดียวเท่านั้น Java รองรับตัววนซ้ำสองประเภท:
1. ตัววนซ้ำการแจงนับ
2. รายการ Iterator
98. hashmap คืออะไร?
Hashmap เป็นฟังก์ชันคอลเลคชันเฟรมเวิร์กซึ่งใช้สำหรับจัดเก็บข้อมูลลงในคู่คีย์-ค่า ในการเข้าถึงข้อมูล เราต้องการคีย์ hashmap ใช้รายการที่เชื่อมโยงภายในเพื่อสนับสนุนฟังก์ชันการจัดเก็บ
99. สแต็คคืออะไร?
สแต็กเป็นโครงสร้างข้อมูลที่สนับสนุนวิธีการ LAST IN FIRST OUT องค์ประกอบที่ผลักครั้งสุดท้ายอยู่ที่ด้านบนสุดของสแต็ก สแต็กรองรับฟังก์ชันต่อไปนี้:
- Push-operation เพื่อผลักองค์ประกอบเข้าไปใน stack
- Pop-operation เพื่อผลักองค์ประกอบออกจาก stack
- Peek-ตัวเลือกเพื่อตรวจสอบองค์ประกอบด้านบน
100. แผนที่ต้นไม้คืออะไร?
Treemap คือการตีความแผนที่ที่นำทางได้ใน Java ซึ่งสร้างขึ้นจากแนวคิดของต้นไม้สีแดงและสีดำ คีย์ของแผนผังต้นไม้จะเรียงลำดับจากน้อยไปมากตามคีย์
101. เวกเตอร์คืออะไร?
เวกเตอร์คือ ArrayList เช่นเดียวกับโครงสร้างข้อมูลใน java ที่มีขนาดเพิ่มขึ้นตามความต้องการ นอกจากนี้ยังรองรับฟังก์ชันดั้งเดิมบางอย่างที่คอลเล็กชันไม่รองรับ
คุณควรทราบด้วยว่าเวกเตอร์เหมาะกับการทำงานกับเธรดมากกว่า
102. ArrayList และเวกเตอร์ต่างกันอย่างไร
ArrayList ไม่เหมาะสำหรับการทำงานในสภาพแวดล้อมแบบเธรด เวกเตอร์ถูกสร้างขึ้นสำหรับการดำเนินการตามเธรด ArrayList ไม่รองรับฟังก์ชันดั้งเดิมในขณะที่เวกเตอร์รองรับฟังก์ชันดั้งเดิม
103. เขียนโปรแกรมเพื่อคำนวณแฟกทอเรียลของตัวเลขในภาษาจาวา
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int fact=1; int n=sc.nextInt(); for (int i=1;i<=n;i++) fact=fact*i; System.out.println(fact); } }
104. เขียนโปรแกรมเพื่อตรวจสอบว่าตัวเลขเป็นจำนวนเฉพาะหรือไม่
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int count=0; for (int i=1;i<=n;i++) { if (n%i==0) count++; } if (count==2) System.out.println("Prime"); else System.out.println("Not Prime"); } }
105. เขียนโปรแกรมแปลงเลขฐานสิบเป็นเลขฐานสอง
import java.util.Scanner; class star { public static void main(String arg[]) { Scanner sc=new Scanner(System.in); System.out.println("Enter a decimal number"); int n=sc.nextInt(); int bin[]=new int[100]; int i = 0; while(n > 0) { bin[i++] = n%2; n = n/2; } System.out.print("Binary number is : "); for(int j = i-1;j >= 0;j--) { System.out.print(bin[j]); } } }
106. เขียนโปรแกรมแปลงเลขฐานสิบเป็นฐานแปด
import java.util.Scanner; class star { public static void main(String args[]) { Scanner sc = new Scanner( System.in ); System.out.print("Enter a decimal number : "); int num =sc.nextInt(); String octal = Integer.toOctalString(num); System.out.println("Decimal to octal: " + octal); } }
107. ฟังก์ชันยูทิลิตี้ใดที่สามารถใช้แยกอักขระที่ตำแหน่งเฉพาะในสตริงได้
สามารถใช้ฟังก์ชันยูทิลิตี้ charAt() เพื่อให้ได้ฟังก์ชันที่เขียนไว้ข้างต้น
108. จะหาความยาวของสตริงใน java ได้อย่างไร?
ความยาวของสตริงใน java สามารถพบได้โดยใช้ยูทิลิตี้ .length()
109. ไวยากรณ์ใดต่อไปนี้สำหรับการกำหนดอาร์เรย์ที่ถูกต้อง?
– Int []=ใหม่ int[];
– int a[]=ใหม่ int[];
– int a[] = int ใหม่ [32]
int a[]=new int[32] เป็นวิธีที่ถูกต้อง
110. สิ่งนี้จะส่งคืนอะไร 3*0.1 == 0.3? จริงหรือเท็จ?
นี่เป็นหนึ่งในคำถามที่ยุ่งยากจริงๆ และสามารถตอบได้ก็ต่อเมื่อแนวคิดของคุณชัดเจนมาก คำตอบสั้น ๆ เป็นเท็จเพราะไม่สามารถแสดงตัวเลขทศนิยมบางตัวได้อย่างแน่นอน
111. เขียนโปรแกรมเพื่อทำการจัดเรียงแบบฟองบนอาร์เรย์ในภาษาจาวา
import java.util.Scanner; class star { public static void main(String args[]) { int arr[] =new int [10]; Scanner sc = new Scanner( System.in ); System.out.println("Enter size of array"); int n=sc.nextInt(); System.out.print("Enter an arry : "); for (int i=0;i<n;i++) arr[i]=sc.nextInt(); for (int i=0;i<n;i++) { for (int j=0;j<n-i-1;j++) { if (arr[j]>arr[j+1]) { int t=arr[j]; arr[j]=arr[j+1]; arr[j+1]=t; } } } for (int i=0;i<n;i++) { System.out.println(arr[i]); } } }
112. เขียนโปรแกรมเพื่อสร้างผลลัพธ์ต่อไปนี้ใน java?
*
**
****
*****
******
public class star { public static void main(String[] args) { int i; int count=1; for (i=1;i<=5;i++){ for (int j=1;j<=i;j++) System.out.print("*"); System.out.println(" "); } } }
113. เขียนโปรแกรมเพื่อสร้างผลลัพธ์ต่อไปนี้
****
***
**
*
public class star { public static void main(String[] args) { int i; int count=1; for (i=5;i>=1;i--){ for (int j=1;j<=i;j++) System.out.print("*"); System.out.println(" "); } } }
114. เขียนโปรแกรมในภาษาจาวาเพื่อลบสระทั้งหมดออกจากสตริง
import java.util.Scanner; public class star { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String n=sc.nextLine(); String n1=n.replaceAll("[AEIOUaeiou]", ""); System.out.println(n1); } }
115. เขียนโปรแกรมในภาษาจาวาเพื่อตรวจสอบพาลินโดรม
String str, rev = ""; Scanner sc = new Scanner(System.in); System.out.println("Enter a string:"); str = sc.nextLine(); int length = str.length(); for ( int i = length - 1; i >= 0; i-- ) rev = rev + str.charAt(i); if (str.equals(rev)) System.out.println(str+" is a palindrome"); else System.out.println(str+" is not a palindrome");
116. กลไกพื้นฐานในการเรียงลำดับในตัวของ java คืออะไร?
ฟังก์ชันการจัดเรียงในตัวของ Java ใช้กลไกการจัดเรียงแบบด่วนสองจุด Quicksort ทำงานได้ดีที่สุดในสถานการณ์จริงส่วนใหญ่และไม่ต้องการพื้นที่เพิ่มเติม
117. ฟังก์ชันยูทิลิตี้ใดที่ใช้ตรวจสอบการมีอยู่ขององค์ประกอบใน ArrayList
hasNext() ใช้สำหรับแสดงองค์ประกอบถัดไปใน ArrayList
118. จะลบองค์ประกอบออกจากอาร์เรย์ได้อย่างไร?
ในการลบองค์ประกอบออกจากอาร์เรย์ เราต้องลบองค์ประกอบก่อน จากนั้นองค์ประกอบอาร์เรย์ที่อยู่ทางด้านขวาขององค์ประกอบจะถูกเลื่อนไปทางซ้ายโดยที่เดียว
119. ความแตกต่างระหว่าง a = a + b และ a += b ?
ตัวดำเนินการ += จะแสดงผลลัพธ์ของการบวกลงในประเภทของตัวแปรที่ใช้เก็บผลลัพธ์โดยปริยาย เมื่อคุณเพิ่มตัวแปรสำคัญสองตัว เช่น ตัวแปรประเภทไบต์ สั้น หรือ int ตัวแปรเหล่านี้จะได้รับการเลื่อนระดับเป็น int ก่อนและจะมีการเพิ่มเข้ามา หากผลลัพธ์ของการเพิ่มมากกว่าค่าสูงสุดของ a แล้ว a + b จะให้ข้อผิดพลาดในการคอมไพล์เวลา แต่ a += b จะใช้ได้ดังที่แสดงด้านล่าง
ไบต์ a = 127;
ไบต์ b = 127;
b = a + b; // ข้อผิดพลาด: ไม่สามารถแปลงจาก int เป็น byte
ข += ก; // ตกลง
คำถามสัมภาษณ์ Java OOPS
1. คลาสใน Java คืออะไร?
ในโลกแห่งความเป็นจริง คุณมักจะมีสิ่งของที่เหมือนกันหลายอย่าง ตัวอย่างเช่น จักรยานของคุณเป็นเพียงหนึ่งในจักรยานหลายคันในโลก การใช้คำศัพท์เชิงวัตถุ เรากล่าวว่าวัตถุจักรยานของคุณเป็นตัวอย่าง (ในอภิธานศัพท์) ของคลาสของวัตถุที่เรียกว่าจักรยาน จักรยานมีสถานะบางอย่าง (เกียร์ปัจจุบัน จังหวะปัจจุบัน สองล้อ) และพฤติกรรม (เปลี่ยนเกียร์ เบรก) เหมือนกัน อย่างไรก็ตาม สถานะของจักรยานแต่ละคันไม่ขึ้นกับและสามารถแตกต่างไปจากสภาพของจักรยานอื่นๆ
เมื่อสร้างจักรยาน ผู้ผลิตใช้ประโยชน์จากข้อเท็จจริงที่ว่าจักรยานมีลักษณะเฉพาะร่วมกัน โดยสร้างจักรยานจำนวนมากจากพิมพ์เขียวเดียวกัน การสร้างพิมพ์เขียวใหม่สำหรับจักรยานแต่ละคันที่ผลิตขึ้นจะไม่มีประสิทธิภาพมากนัก
ในซอฟต์แวร์เชิงวัตถุ มีความเป็นไปได้ที่จะมีวัตถุประเภทเดียวกันจำนวนมากที่มีลักษณะเฉพาะร่วมกัน: สี่เหลี่ยมผืนผ้า บันทึกของพนักงาน คลิปวิดีโอ และอื่นๆ เช่นเดียวกับผู้ผลิตจักรยาน คุณสามารถใช้ประโยชน์จากข้อเท็จจริงที่ว่าวัตถุประเภทเดียวกันมีความคล้ายคลึงกัน และคุณสามารถสร้างพิมพ์เขียวสำหรับวัตถุเหล่านั้นได้ พิมพ์เขียวซอฟต์แวร์สำหรับอ็อบเจ็กต์เรียกว่าคลาส (ในอภิธานศัพท์)
2. คอนสตรัคเตอร์ในจาวาคืออะไร?
"A constructor in Java is a special method that is used to initialize objects. The constructor is called when an object of a class is created. It can be used to set initial values for object attributes: Example
Create a constructor: // Create a MyClass class
public class MyClass { int x; // Create a class attribute // Create a class constructor for the MyClass class public MyClass() { x = 5; // Set the initial value for the class attribute x } public static void main(String[] args) { MyClass myObj = new MyClass(); // Create an object of class MyClass (This will call the constructor) System.out.println(myObj.x); // Print the value of x }
} // Outputs 5
3. วัตถุในจาวาคืออะไร?
วัตถุคือชุดซอฟต์แวร์ของตัวแปรและวิธีการที่เกี่ยวข้อง
คุณสามารถแสดงวัตถุในโลกแห่งความเป็นจริงโดยใช้วัตถุซอฟต์แวร์ คุณอาจต้องการแสดงสุนัขในโลกแห่งความเป็นจริงเป็นวัตถุซอฟต์แวร์ในโปรแกรมแอนิเมชั่นหรือจักรยานในโลกแห่งความเป็นจริงเป็นวัตถุซอฟต์แวร์ภายในจักรยานออกกำลังกายอิเล็กทรอนิกส์ อย่างไรก็ตาม คุณยังสามารถใช้อ็อบเจ็กต์ซอฟต์แวร์เพื่อสร้างแบบจำลองแนวคิดนามธรรมได้ ตัวอย่างเช่น เหตุการณ์เป็นอ็อบเจ็กต์ทั่วไปที่ใช้ในระบบหน้าต่าง GUI เพื่อแสดงถึงการกระทำของผู้ใช้ที่กดปุ่มเมาส์หรือแป้นบนแป้นพิมพ์
4. จะสร้างวัตถุใน java ได้อย่างไร?
- ประกาศ: โค้ดที่ตั้งค่าเป็นตัวหนาคือการประกาศตัวแปรทั้งหมดที่เชื่อมโยงชื่อตัวแปรกับประเภทอ็อบเจ็กต์
- การสร้างอินสแตนซ์: คีย์เวิร์ดใหม่คือโอเปอเรเตอร์ Java ที่สร้างอ็อบเจ็กต์
- การเริ่มต้น: ตัวดำเนินการใหม่จะตามด้วยการโทรไปยังตัวสร้าง ซึ่งจะเริ่มต้นวัตถุใหม่
5. วัตถุในจาวาคืออะไร?
ออบเจ็กต์ซอฟต์แวร์มีแนวคิดคล้ายกับอ็อบเจ็กต์ในโลกแห่งความเป็นจริง พวกมันประกอบด้วยสถานะและพฤติกรรมที่เกี่ยวข้องเช่นกัน อ็อบเจ็กต์เก็บสถานะของมันไว้ในฟิลด์ (ตัวแปรในภาษาโปรแกรมบางภาษา) และแสดงพฤติกรรมของมันผ่านเมธอด (ฟังก์ชันในภาษาโปรแกรมบางภาษา) เมธอดทำงานบนสถานะภายในของออบเจ็กต์และทำหน้าที่เป็นกลไกหลักสำหรับการสื่อสารระหว่างวัตถุกับวัตถุ การซ่อนสถานะภายในและต้องการการโต้ตอบทั้งหมดเพื่อดำเนินการผ่านวิธีการของอ็อบเจ็กต์เรียกว่าการห่อหุ้มข้อมูล ซึ่งเป็นหลักการพื้นฐานของการเขียนโปรแกรมเชิงวัตถุ
6. อุ๊ปส์ในจาวาคืออะไร?
ระบบการเขียนโปรแกรมเชิงวัตถุ (OOP) เป็นกระบวนทัศน์การเขียนโปรแกรมตามแนวคิดของ "วัตถุ" ที่มีข้อมูลและวิธีการ วัตถุประสงค์หลักของการเขียนโปรแกรมเชิงวัตถุคือเพื่อเพิ่มความยืดหยุ่นและความสามารถในการบำรุงรักษาโปรแกรม การเขียนโปรแกรมเชิงวัตถุนำข้อมูลและพฤติกรรม (วิธีการ) มารวมกันในตำแหน่งเดียว (วัตถุ) ทำให้เข้าใจวิธีการทำงานของโปรแกรมได้ง่ายขึ้น เราจะครอบคลุมทุกคุณสมบัติของ OOP อย่างละเอียด เพื่อที่คุณจะได้ไม่ต้องพบกับแนวคิด OOP ที่ยากต่อการทำความเข้าใจ
7. ใครเป็นผู้รันโค้ดไบต์ในจาวา?
Bytecode เป็นรูปแบบที่คอมไพล์สำหรับโปรแกรม Java เมื่อโปรแกรม Java ถูกแปลงเป็น bytecode แล้ว จะสามารถถ่ายโอนข้ามเครือข่ายและดำเนินการโดย Java Virtual Machine (JVM)
8. ทำไมจาวาถึงปลอดภัย?
Java ไม่มีแนวคิดเกี่ยวกับพอยน์เตอร์ ดังนั้นจาวาจึงปลอดภัย Java ไม่ให้เข้าถึงตำแหน่งหน่วยความจำจริง
9. ทำไม java ไม่สนับสนุนการสืบทอดหลายรายการ
Java รองรับการสืบทอดหลายรายการผ่านอินเทอร์เฟซเท่านั้น คลาสสามารถใช้อินเทอร์เฟซจำนวนเท่าใดก็ได้ แต่สามารถขยายได้เพียงคลาสเดียวเท่านั้น
ไม่รองรับการสืบทอดหลายรายการเนื่องจากนำไปสู่ปัญหาเพชรที่ร้ายแรง อย่างไรก็ตาม มันสามารถแก้ไขได้ แต่มันนำไปสู่ระบบที่ซับซ้อน ดังนั้นการสืบทอดจำนวนมากจึงถูกทิ้งโดยผู้ก่อตั้ง Java
10. ทำไม java ไม่สนับสนุนการสืบทอดหลายรายการ
Java รองรับการสืบทอดหลายรายการผ่านอินเทอร์เฟซเท่านั้น คลาสสามารถใช้อินเทอร์เฟซจำนวนเท่าใดก็ได้ แต่สามารถขยายได้เพียงคลาสเดียวเท่านั้น ไม่รองรับการสืบทอดหลายรายการเนื่องจากนำไปสู่ปัญหาเพชรที่ร้ายแรง
11. ทำไมเราไม่สามารถสร้างวัตถุของคลาสนามธรรมใน java?
เนื่องจากคลาสนามธรรมเป็นคลาสที่ไม่สมบูรณ์ (ไม่สมบูรณ์ในความหมายที่มีเมธอดนามธรรมที่ไม่มีเนื้อหาและเอาต์พุต) เราจึงสร้างอินสแตนซ์หรือวัตถุไม่ได้ เช่นเดียวกับที่เราพูดสำหรับอินเทอร์เฟซ
12. ตัวสร้างโอเวอร์โหลดคืออะไร?
เมื่อคลาสมีคอนสตรัคเตอร์หลายตัวที่มีการกำหนดฟังก์ชันหรือพารามิเตอร์ต่างกัน จะเรียกว่าคอนสตรัคโอเวอร์โหลด
import java.io.*; import java.lang.*; public class constructor_overloading { double sum; constructor_overloading(){ sum=0; } constructor_overloading(int x,int y){ sum=x+y; } constructor_overloading(double x,double y){ sum=x+y; } void print_sum(){ System.out.println(sum); } public static void main(String args[]){ constructor_overloading c=new constructor_overloading(); c.print_sum(); constructor_overloading c1=new constructor_overloading(10,20); c1.print_sum(); constructor_overloading c2=new constructor_overloading(10.11,20.11); c2.print_sum(); } }
13. Java มี Inheritance กี่แบบ?
การสืบทอดแบบเดี่ยว หลายระดับ หลายระดับ ไฮบริด และลำดับชั้นเป็นไปได้ใน java การสืบทอดแบบไฮบริดและการสืบทอดแบบลำดับชั้นสามารถทำได้ผ่านอินเทอร์เฟซเท่านั้น
14. Java รองรับคอนสตรัคเตอร์กี่ประเภท?
Java รองรับตัวสร้างประเภทต่อไปนี้:
– ตัวสร้างที่ไม่มีการกำหนดพารามิเตอร์หรือค่าเริ่มต้น
– ตัวสร้างพารามิเตอร์
– คัดลอกคอนสตรัคเตอร์
15. คลาสซิงเกิลตันใน Java คืออะไร? ประโยชน์ของการทำ class singleton คืออะไร?
คลาสซิงเกิลตันเป็นคลาสใน Java ที่สามารถมีอินสแตนซ์ได้เพียงหนึ่งอินสแตนซ์ในแอปพลิเคชัน หากมีการสร้างอินสแตนซ์ใหม่สำหรับคลาสเดียวกัน อินสแตนซ์ดังกล่าวจะชี้ไปที่อินสแตนซ์แรกที่สร้างขึ้น และมีค่าเท่ากันสำหรับแอตทริบิวต์และคุณสมบัติทั้งหมด
คลาส Singleton ถูกสร้างขึ้นเพื่อสร้างจุดเข้าถึงวัตถุทั่วโลก คลาส Singleton ค้นหาการใช้งานหลักในการแคช การบันทึก ไดรเวอร์อุปกรณ์ ซึ่งเป็นเอนทิตีทั้งหมดสำหรับการเข้าถึงแบบสากล
16. บทบาทของการสรุป () คืออะไร?
Finalize() ใช้สำหรับเก็บขยะ มันถูกเรียกโดยสภาพแวดล้อมการรัน Java โดยค่าเริ่มต้นเพื่อล้างวัตถุที่ไม่ได้ใช้ สิ่งนี้ทำเพื่อการจัดการหน่วยความจำและการล้างฮีป
17. อธิบายการห่อหุ้มใน Java
Encapsulation เป็นกระบวนการของการรวมตัวแปรและฟังก์ชันเข้าด้วยกันเป็นหน่วยเดียวเพื่อซ่อนรายละเอียดที่ไม่จำเป็น เอนทิตีที่ห่อหุ้มไว้เรียกว่าคลาสในภาษาจาวา การห่อหุ้มเรียกอีกอย่างว่าการซ่อนข้อมูลเพราะเป็นการซ่อนความซับซ้อนที่แฝงอยู่
18. อธิบายสิ่งที่เป็นนามธรรมใน Java
สิ่งที่เป็นนามธรรมคือกระบวนการเปิดเผยข้อมูลที่จำเป็นและซ่อนรายละเอียดเล็กน้อยในหน่วยต่างๆ ใน java Java มีคลาสและเมธอดที่เป็นนามธรรมซึ่งทำหน้าที่นามธรรมข้อมูล
19. หากคลาสลูกสืบทอดคลาสฐาน คอนสตรัคเตอร์ของคลาสฐานจะสืบทอดมาจากคลาสย่อยด้วยหรือไม่
ตัวสร้างไม่ใช่คุณสมบัติของคลาส จึงไม่สามารถสืบทอดได้ หากใครสามารถสืบทอดคอนสตรัคเตอร์ได้ก็หมายความว่าสามารถสร้างคลาสลูกด้วยคอนสตรัคเตอร์ของคลาสพาเรนต์ซึ่งอาจทำให้เกิดข้อผิดพลาดในการอ้างอิงได้ในภายหลังเมื่อคลาสย่อยถูกสร้างอินสแตนซ์ ดังนั้นเพื่อหลีกเลี่ยงความยุ่งยากดังกล่าว คอนสตรัคเตอร์จึงไม่สามารถสืบทอดได้ คลาสย่อยสามารถเรียกใช้คอนสตรัคเตอร์คลาสหลักโดยใช้คีย์เวิร์ด super
20. ซุปเปอร์มีประโยชน์อย่างไร?
super() ใช้เพื่อเรียกใช้ตัวสร้าง superclass โดยตัวสร้าง subclass ด้วยวิธีนี้ เราไม่ต้องสร้างวัตถุที่แตกต่างกันสำหรับ super และ subclasses
21. encapsulation ประสบความสำเร็จใน Java อย่างไร?
การห่อหุ้มทำได้โดยการรวมข้อมูลและโค้ดลงในตัวห่อหุ้มอย่างง่ายที่เรียกว่าคลาส ออบเจ็กต์สร้างอินสแตนซ์ของคลาสเพื่อรับสำเนาของข้อมูลคลาส
22. คลาสนามธรรมใน Java คืออะไร?
คลาสนามธรรมคือคลาสที่สามารถสืบทอดได้เท่านั้น และไม่สามารถใช้สำหรับการสร้างอ็อบเจ็กต์ได้ เป็นประเภทของคลาสที่ถูกจำกัดด้วยฟังก์ชันที่จำกัด
23. ความแตกต่างที่เกิดขึ้นใน Java เป็นอย่างไร?
ตัวอย่างของพหุสัณฐานคือตัวดำเนินการ == ซึ่งสามารถใช้เพื่อเปรียบเทียบทั้งตัวเลขและสตริง
24. สามารถประกาศวิธีการหลักเป็นแบบส่วนตัวใน Java ได้หรือไม่?
ใช่ วิธีหลักสามารถประกาศเป็นแบบส่วนตัวได้
25. วัตถุใน Java คืออะไร?
ออบเจ็กต์คือตัวอย่างของคลาสในจาวา แชร์แอตทริบิวต์และคุณสมบัติทั้งหมดของคลาส
26. จะเกิดอะไรขึ้นถ้าเราสร้างคอนสตรัคเตอร์ขั้นสุดท้าย?
ถ้าเราสร้างคอนสตรัคเตอร์ขั้นสุดท้าย ตัวแปรคลาสที่เริ่มต้นภายในคอนสตรัคเตอร์จะไม่สามารถใช้งานได้ สถานะของพวกเขาไม่สามารถเปลี่ยนแปลงได้
27. การผูกมัดคอนสตรัคเตอร์คืออะไร?
Constructor chaining เป็นกระบวนการของการเรียกใช้ Constructor ของคลาสเดียวกันหรือคลาสที่ต่างกันภายใน Constructor ด้วยวิธีนี้ หลายอ็อบเจ็กต์ไม่จำเป็นสำหรับการเรียกใช้คอนสตรัคเตอร์โดยที่คอนสตรัคเตอร์มีพารามิเตอร์ต่างกัน
คำถามสัมภาษณ์ Java Multithreading
1. มัลติเธรดใน java คืออะไร?
Multithreading เป็นคุณลักษณะ Java ที่อนุญาตให้เรียกใช้งานโปรแกรมตั้งแต่สองส่วนขึ้นไปพร้อมกันเพื่อการใช้งาน CPU สูงสุด แต่ละส่วนของโปรแกรมดังกล่าวเรียกว่าเธรด ดังนั้นเธรดจึงเป็นกระบวนการที่มีน้ำหนักเบาภายในกระบวนการ
2. thread-safe ใน java คืออะไร?
รหัสความปลอดภัยของเธรดหรือรหัสความปลอดภัยของเธรดใน Java หมายถึงรหัสที่สามารถใช้หรือใช้ร่วมกันได้อย่างปลอดภัยในสภาพแวดล้อมที่ทำงานพร้อมกันหรือหลายเธรดและจะทำงานตามที่คาดไว้ รหัส คลาส หรืออ็อบเจ็กต์ใดๆ ที่สามารถทำงานแตกต่างจากสัญญาในสภาพแวดล้อมที่ทำงานพร้อมกันนั้นไม่ปลอดภัยสำหรับเธรด
3. เธรดในจาวาคืออะไร?
เธรดเป็นโปรแกรมขนาดเล็กที่อนุญาตให้หลายกระบวนการทำงานพร้อมกันได้ ทุกโปรแกรมจาวามีอย่างน้อยหนึ่งเธรดที่เรียกว่าเธรดหลัก JVM สร้างเธรดหลัก ผู้ใช้สามารถกำหนดเธรดของตนเองโดยขยายคลาสเธรด (หรือ) โดยใช้อินเทอร์เฟซ Runnable เธรดจะดำเนินการพร้อมกัน
public static void main(String[] args){//main thread starts here }
4. ความผันผวนใน java คืออะไร?
คีย์เวิร์ดระเหยใช้เพื่อแก้ไขค่าของตัวแปรตามเธรดต่างๆ นอกจากนี้ยังใช้เพื่อทำให้คลาสเธรดปลอดภัย หมายความว่าหลายเธรดสามารถใช้เมธอดและอินสแตนซ์ของคลาสได้พร้อมกันโดยไม่มีปัญหา
5. จะสร้างตัวเลขสุ่มใน java ภายในช่วงได้อย่างไร?
import java.util.concurrent.ThreadLocalRandom; // nextInt is normally exclusive of the top value,
// so add 1 to make it inclusive
int randomNum = ThreadLocalRandom.current().nextInt(min, max + 1);
6. หากเราโคลนวัตถุโดยใช้ตัวดำเนินการมอบหมาย ข้อมูลอ้างอิงต่างกันหรือไม่
เมื่อวัตถุถูกโคลนโดยใช้ตัวดำเนินการมอบหมาย วัตถุทั้งสองจะใช้ข้อมูลอ้างอิงเดียวกัน การเปลี่ยนแปลงที่ทำกับข้อมูลโดยวัตถุหนึ่งจะมีผลกับอีกวัตถุหนึ่งด้วย
7. เราสามารถเริ่มเธรดสองครั้งใน java ได้หรือไม่?
เมื่อเริ่มชุดข้อความแล้ว จะไม่สามารถเริ่มชุดข้อความได้อีก การทำเช่นนั้นจะโยน IllegalThreadStateException
8. จะสร้างเธรด Java ได้อย่างไร?
สามารถสร้างเธรดได้โดยใช้อินเทอร์เฟซที่รันได้
สามารถสร้างเธรดได้โดยการขยายคลาสเธรด
สิ่งนี้นำเราไปสู่จุดสิ้นสุดของคำถามสัมภาษณ์ Java ดีใจที่เห็นคุณพร้อมมากขึ้นที่จะเผชิญการสัมภาษณ์
คำถามสัมภาษณ์ Java คำถามที่พบบ่อย
1. ฉันควรเตรียมอะไรไปสัมภาษณ์ Java?
ไม่มีวิธีการที่แน่นอนที่คุณสามารถเตรียมตัวสำหรับการสัมภาษณ์ Java ที่จะเกิดขึ้นได้ อย่างไรก็ตาม การทำความเข้าใจแนวคิดพื้นฐานของ Java เป็นสิ่งสำคัญสำหรับคุณ ขั้นตอนต่อไปคือการเรียน Java Beginners Course ที่จะช่วยให้คุณเข้าใจแนวคิดต่างๆ เป็นอย่างดี หรืออ่านหนังสือชั้นนำสำหรับการเรียนรู้ด้วยตนเอง นอกเหนือจากการเรียนรู้แนวคิดพื้นฐานผ่านหลักสูตร หนังสือ และบล็อกแล้ว คุณยังสามารถทำงานในโครงการที่จะช่วยให้คุณได้รับประสบการณ์ตรง
2. พื้นฐานของ Java คืออะไร?
Java เป็นภาษาโปรแกรมวัตถุประสงค์ทั่วไปเชิงวัตถุ เป็นภาษาการเขียนโปรแกรมยอดนิยมเนื่องจากเป็นไวยากรณ์ที่ใช้งานง่าย พื้นฐานของ Java รวมถึงการทำความเข้าใจว่า Java คืออะไร วิธีการติดตั้ง Java และ Java IDE ตัวแปรและประเภทข้อมูลใน Java ตัวดำเนินการใน Java อาร์เรย์ ฟังก์ชัน คำสั่ง Flow Control และโปรแกรมพื้นฐาน หากต้องการเรียนรู้พื้นฐานของ Java คุณสามารถเรียนหลักสูตร Java for Beginners และเข้าใจแนวคิดที่จำเป็นสำหรับคุณในการสร้างอาชีพที่ประสบความสำเร็จในการเขียนโปรแกรม Java
3. เหตุใดสตริงจึงไม่เปลี่ยนรูปใน Java
สตริงจะไม่เปลี่ยนรูปใน Java เพื่อให้แน่ใจว่าค่าของสตริงจะไม่เปลี่ยนแปลง Java ใช้ตัวอักษรสตริง หากมีตัวแปรหลายตัวที่อ้างถึงวัตถุเดียวและค่าของวัตถุเปลี่ยนไป จะส่งผลต่อตัวแปรอ้างอิงทั้งหมด ดังนั้นสตริงจึงไม่เปลี่ยนรูปใน Java
4. เหตุใดจึงไม่ใช้พอยน์เตอร์ใน Java
Java ไม่อนุญาตให้ใช้พอยน์เตอร์ ไม่มีการใช้พอยน์เตอร์ใน Java เพื่อให้แน่ใจว่ามีความปลอดภัยและแข็งแกร่งยิ่งขึ้น
5. ภาษาเชิงวัตถุ Java 100% หรือไม่
ไม่ Java ไม่ใช่ภาษาเชิงวัตถุ 100% มันเป็นไปตามหลักการบางอย่างของภาษาเชิงวัตถุ แต่ไม่ใช่ทั้งหมด
6. คุณสมบัติของ Java คืออะไร?
คุณสมบัติหลักของ Java รวมถึง: มัลติเธรด, แพลตฟอร์มอิสระ, เรียบง่าย, ปลอดภัย, เป็นกลางทางสถาปัตยกรรม, พกพาได้, แข็งแกร่ง, ไดนามิก, ประสิทธิภาพสูง และตีความ
7. ฉันจะเรียนรู้ Java ได้อย่างง่ายดายได้อย่างไร
วิธีการเรียนรู้ใด ๆ ที่เหมาะสมกับคุณและรูปแบบการเรียนรู้ของคุณควรถือเป็นวิธีที่ดีที่สุดในการเรียนรู้ ต่างคนต่างเรียนรู้ได้ดีด้วยวิธีการต่างๆ บุคคลบางคนอาจชอบเรียนหลักสูตรออนไลน์ อ่านหนังสือหรือบล็อก ดูวิดีโอ YouTube เพื่อเรียนรู้ด้วยตนเอง และบางคนอาจเรียนรู้ผ่านการฝึกฝนและประสบการณ์จริง เลือกสิ่งที่ดีที่สุดสำหรับคุณ!
8. API ใน Java คืออะไร?
ใน Java API ย่อมาจาก Application Programming Interface เป็นซอฟต์แวร์ที่ช่วยให้สองแอพพลิเคชั่นสามารถพูดคุยกันได้ เป็นรายการของคลาสที่เป็นส่วนหนึ่งของ JDK หรือ Java Development Kit และรวมถึงอินเตอร์เฟส แพ็คเกจ คลาส ฟิลด์ เมธอด และคอนสตรัคเตอร์
9. Java full form คืออะไร?
Java เป็นภาษาโปรแกรมที่พัฒนาโดย James Gosling ที่ Sun Microsystems ในขณะที่นักพัฒนากำลังดื่มกาแฟและระดมสมองชื่อสำหรับภาษาการเขียนโปรแกรมของพวกเขา พวกเขาเลือกที่จะตั้งชื่อว่า Java ในปี 1995 ซึ่งไม่มีรูปแบบที่สมบูรณ์
คุณสามารถลงทะเบียนเรียนหลักสูตร JAVA เหล่านี้ได้ที่ Great Learning Academy และรับใบรับรองฟรี:
การเขียนโปรแกรม Java
การเขียนโปรแกรม Java ในภาษาฮินดี
โครงสร้างข้อมูลและอัลกอริทึมใน Java
สงสัยว่าจะเรียนรู้ทักษะที่เป็นที่ต้องการอย่างมากได้ฟรีจากที่ใด ตรวจสอบหลักสูตรใน Great Learning Academy Great. ลงทะเบียนในหลักสูตรใดก็ได้ เรียนรู้ทักษะตามความต้องการ และรับใบรับรองฟรีของคุณ รีบ!
7 ที่มา: https://www.mygreatlearning.com/blog/java-interview-questions/
- '
- "
- &
- 100
- 11
- 2021
- 7
- 9
- แน่นอน
- เข้า
- การเข้าถึง
- ลงชื่อเข้าใช้
- การกระทำ
- ความได้เปรียบ
- อัลกอริทึม
- ทั้งหมด
- ในหมู่
- ภาพเคลื่อนไหว
- มด
- API
- APIs
- app
- การใช้งาน
- การใช้งาน
- ปพลิเคชัน
- สถาปัตยกรรม
- เอกสารเก่า
- AREA
- ข้อโต้แย้ง
- รอบ
- บทความ
- ความพร้อมใช้งาน
- ธนาคาร
- ข้อมูลพื้นฐานเกี่ยวกับ
- ที่ดีที่สุด
- รถจักรยาน
- พันล้าน
- Black
- Blog
- BMW
- ร่างกาย
- ร้านหนังสือเกาหลี
- กล่อง
- เบราว์เซอร์
- ฟองสบู่
- สร้าง
- สร้าง
- การก่อสร้าง
- กำ
- ธุรกิจ
- การประยุกต์ทางธุรกิจ
- จังหวะ
- โทรศัพท์
- ความจุ
- ความก้าวหน้า
- รถยนต์
- จับ
- ก่อให้เกิด
- ใบรับรอง
- ใบรับรอง
- เปลี่ยนแปลง
- การตรวจสอบ
- การตรวจสอบ
- เด็ก
- Chrome
- ลูกค้า
- รหัส
- การเข้ารหัส
- กาแฟ
- การทำงานร่วมกัน
- วิทยาลัยและมหาวิทยาลัย
- ร่วมกัน
- การสื่อสาร
- บริษัท
- บริษัท
- ส่วนประกอบ
- ความสับสน
- อุปกรณ์ที่เชื่อมต่อ
- ภาชนะ
- ภาชนะบรรจุ
- เนื้อหา
- เนื้อหา
- สัญญา
- การแปลง
- คุ้กกี้
- การสร้าง
- ปัจจุบัน
- DAO
- ข้อมูล
- การเข้าถึงข้อมูล
- การประมวลผล
- ฐานข้อมูล
- ฐานข้อมูล
- ออกแบบ
- รายละเอียด
- พัฒนา
- ผู้พัฒนา
- นักพัฒนา
- พัฒนาการ
- อุปกรณ์
- เอกสาร
- สุนัข
- คนขับรถ
- ปรับตัวลดลง
- ชั้นเยี่ยม
- วิศวกร
- ภาษาอังกฤษ
- Enterprise
- สิ่งแวดล้อม
- ฯลฯ
- เหตุการณ์
- เหตุการณ์
- Excel
- พิเศษ
- การปฏิบัติ
- การออกกำลังกาย
- ประสบการณ์
- ส่วนขยาย
- ใบหน้า
- FAST
- ลักษณะ
- คุณสมบัติ
- สาขา
- รูป
- ชื่อจริง
- FIS
- ความยืดหยุ่น
- ไหล
- ปฏิบัติตาม
- ลุย
- ฟอร์ม
- รูป
- ผู้ก่อตั้ง
- กรอบ
- ฟรี
- เต็ม
- ฟังก์ชัน
- ความรู้พื้นฐาน
- เกียร์
- เพศ
- General
- เหตุการณ์ที่
- ยิ่งใหญ่
- สีเขียว
- บัญชีกลุ่ม
- ให้คำแนะนำ
- การจัดการ
- กัญชา
- hashing
- หัว
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- ซ่อน
- จุดสูง
- ถือ
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- HTTPS
- เป็นลูกผสม
- ความคิด
- รวมทั้ง
- เพิ่ม
- ดัชนี
- อินโดนีเซีย
- อุตสาหกรรม
- ข้อมูล
- สำคัญ
- ปฏิสัมพันธ์
- อินเทอร์เน็ต
- สัมภาษณ์
- บทสัมภาษณ์
- การลงทุน
- วาณิชธนกิจ
- ปัญหา
- IT
- ชวา
- JavaScript
- อัญมณี
- การสัมภาษณ์
- ร่วม
- คีย์
- กุญแจ
- ชุด
- ความรู้
- ภาษา
- ภาษา
- ใหญ่
- ชั้นนำ
- เรียนรู้
- การเรียนรู้
- ชั้น
- ห้องสมุด
- ถูก จำกัด
- Line
- LINK
- รายการ
- รายการ
- โหลด
- ที่ตั้ง
- นาน
- สำคัญ
- การทำ
- การจัดการ
- ผลิต
- แผนที่
- เครื่องหมาย
- คณิตศาสตร์
- วัด
- สมาชิก
- โทรศัพท์มือถือ
- แอปพลิเคชันบนมือถือ
- แบบ
- เป็นที่นิยม
- MS
- คือ
- ชื่อ
- สุทธิ
- เครือข่าย
- ตัวเลข
- โอ๊ก
- เสนอ
- ออนไลน์
- เปิด
- การดำเนินการ
- ตัวเลือกเสริม (Option)
- Options
- คำพยากรณ์
- ใบสั่ง
- อื่นๆ
- ตัวอย่าง
- แบบแผน
- คน
- การปฏิบัติ
- เดือย
- เวที
- สระ
- ยอดนิยม
- นำเสนอ
- กด
- ส่วนตัว
- ดูรายละเอียด
- โครงการ
- การเขียนโปรแกรม
- การเขียนโปรแกรมภาษา
- โปรแกรม
- โครงการ
- การบริหารจัดการโครงการ
- โครงการ
- สาธารณะ
- หลาม
- คุณภาพ
- พิสัย
- ผู้อ่าน
- การอ่าน
- เรียลไทม์
- บันทึก
- ความต้องการ
- ทรัพยากร
- REST
- รับคืน
- ย้อนกลับ
- ความเสี่ยง
- rt
- วิ่ง
- วิ่ง
- การสแกน
- โรงเรียน
- จอภาพ
- ค้นหา
- ความปลอดภัย
- เห็น
- ความรู้สึก
- บริการ
- ชุด
- Share
- ที่ใช้ร่วมกัน
- หุ้น
- สั้น
- ง่าย
- ขนาด
- ทักษะ
- เล็ก
- So
- ซอฟต์แวร์
- การพัฒนาซอฟต์แวร์
- แก้
- ช่องว่าง
- แยก
- สเปรดชีต
- ฤดูใบไม้ผลิ
- SQL
- สี่เหลี่ยม
- ระยะ
- เริ่มต้น
- ข้อความที่เริ่ม
- startups
- สถานะ
- สหรัฐอเมริกา
- การเก็บรักษา
- จัดเก็บ
- ร้านค้า
- กลยุทธ์
- นักเรียน
- ที่ประสบความสำเร็จ
- การจัดหา
- สนับสนุน
- ที่สนับสนุน
- รองรับ
- สวิตซ์
- ระบบ
- ระบบ
- การพูดคุย
- เทคโนโลยี
- เทคโนโลยี
- ทดสอบ
- ข้อมูลพื้นฐานเกี่ยวกับ
- ที่มา
- เวลา
- ด้านบน
- การขนส่ง
- เกี่ยวกับการสอน
- สากล
- มหาวิทยาลัย
- มหาวิทยาลัย
- บันทึก
- us
- ผู้ใช้
- ประโยชน์
- ความคุ้มค่า
- วีดีโอ
- วิดีโอ
- เสมือน
- เครื่องเสมือน
- วอลโว่
- เว็บ
- เว็บแอปพลิเคชัน
- Website
- ความหมายของ
- WHO
- หน้าต่าง
- ภายใน
- คำ
- งาน
- โรงงาน
- โลก
- ทั่วโลก
- X
- XML
- YouTube