Intellij Idea - การแก้จุดบกพร่อง
ดีบักเกอร์ทำให้การดีบักแอปพลิเคชันง่ายขึ้นมาก เมื่อใช้ดีบักเกอร์เราสามารถหยุดการทำงานของโปรแกรม ณ จุดหนึ่งตรวจสอบตัวแปรก้าวเข้าสู่ฟังก์ชันและทำหลาย ๆ อย่าง IntelliJ จัดเตรียมดีบักเกอร์ Java แบบ inbuilt
จุดพัก
เบรกพอยต์อนุญาตให้หยุดการทำงานของโปรแกรมในบางจุด สามารถตั้งค่าเบรกพอยต์ได้โดยการวางเมาส์เหนือพื้นที่รางน้ำของบรรณาธิการแล้วคลิกที่มัน
จุดพักแสดงโดยใช้สัญลักษณ์วงกลมสีแดง พิจารณาจุดพักที่กำหนดไว้ที่บรรทัดที่ 3
พิจารณาขั้นตอนต่อไปนี้เพื่อทำความเข้าใจเพิ่มเติมเกี่ยวกับวิธีการทำงานของเบรกพอยต์ -
คลิกขวาที่สัญลักษณ์วงกลมสีแดง
เลือกไฟล์ More ตัวเลือก.
หากต้องการลบเบรกพอยต์เพียงคลิกที่สัญลักษณ์เดียวกัน
ทำตามขั้นตอนเหล่านี้เพื่อเริ่มการดีบักเกอร์ -
- ไปที่เมนู Run
- เลือกตัวเลือก Debug
ก้าวเข้าสู่
ในขณะที่การดีบักหากพบฟังก์ชันและขั้นตอนในการดำเนินการถูกเลือกดีบักเกอร์จะหยุดการทำงานของโปรแกรมในแต่ละจุดของฟังก์ชันนั้นราวกับว่ามีการเปิดใช้งานการดีบักสำหรับฟังก์ชันนั้น
ตัวอย่างเช่นเมื่อการทำงานของโปรแกรมมาถึงบรรทัดที่ 9 และหากเราเลือกขั้นตอนในการดำเนินการมันจะหยุดการดำเนินการในแต่ละบรรทัดใน sayGoodBye() ฟังก์ชัน
ก้าวออกมา
การดำเนินการ Step out เป็นการย้อนกลับของ Step in action ตัวอย่างเช่นหากคุณดำเนินการขั้นตอนการดำเนินการกับสถานการณ์ข้างต้นดีบักเกอร์จะกลับมาจากไฟล์sayGoodBye() วิธีการและเริ่มดำเนินการที่บรรทัดที่ 10
ก้าวข้าม
Step over action ไม่เข้าสู่ฟังก์ชันแทน แต่จะข้ามไปยังบรรทัดถัดไปของโค้ด ตัวอย่างเช่นหากคุณอยู่ที่บรรทัดที่ 9 และดำเนินการตามขั้นตอนมากกว่าการกระทำมันจะย้ายการดำเนินการไปยังบรรทัดที่ 10
โปรแกรมดำเนินการต่อ
การดำเนินการ Resume Program จะดำเนินการโปรแกรมต่อไปโดยละเว้นจุดพักทั้งหมด
หยุดการกระทำ
การดำเนินการ Stop ช่วยหยุดการดีบักเกอร์
ก้าวเข้าสู่
ในขณะที่แก้ไขจุดบกพร่องบางครั้งเราอาจไปถึงบรรทัดรหัสที่เรียกใช้หลายวิธี เมื่อทำการดีบักบรรทัดของโค้ดเหล่านี้โดยทั่วไปแล้วดีบักเกอร์จะอนุญาตให้เราใช้step intoและนำเราผ่านฟังก์ชั่นลูกทั้งหมดจากนั้นกลับไปที่ฟังก์ชันหลัก อย่างไรก็ตามจะเป็นอย่างไรหากเราต้องการก้าวเข้าสู่ฟังก์ชันลูกเดียว? ด้วย Smart step-into ช่วยให้เราสามารถเลือกฟังก์ชั่นที่จะก้าวเข้ามาได้
ตอนนี้ให้เราสร้างคลาส Java ด้วยโค้ดบรรทัดต่อไปนี้ -
public class HelloWorld {
public static void main(String[] args) {
allFunctions();
}
static void allFunctions() {
System.out.println(function1() + " " + function2() + " " + function3());
}
static String function1() {
return "function1";
}
static String function2() {
return "function2";
}
static String function3() {
return "function3";
}
}
ในโค้ดด้านบน allFunctions()เรียกอีก 3 ฟังก์ชั่น ให้เรากำหนดจุดพักที่ฟังก์ชันนี้ ทำตามขั้นตอนเหล่านี้เพื่อดำเนินการอย่างชาญฉลาดใน -
- ไปวิ่ง
- เลือกขั้นตอนที่ชาญฉลาดเป็น
- เลือกฟังก์ชันลูกที่จะไป
การตรวจสอบตัวแปร
ในระหว่างการดีบัก IntelliJ จะแสดงค่าของตัวแปรในหน้าต่างตัวแก้ไขเอง นอกจากนี้เรายังสามารถดูข้อมูลเดียวกันได้ในหน้าต่าง Debug
ประเมินการแสดงออก
การประเมินการแสดงออกช่วยให้สามารถประเมินการแสดงออกได้ทันที ทำตามขั้นตอนเหล่านี้เพื่อดำเนินการนี้ -
เริ่มแอปพลิเคชันในดีบักเกอร์
นำทางไปยัง Run->Evaluate นิพจน์.
ใส่นิพจน์ ในตัวอย่างด้านล่างค่าปัจจุบันของตัวแปร 'i' คือ 0; ดังนั้นนิพจน์ 'i> 100' จะประเมินเป็นเท็จ