CodeGym /จาวาบล็อก /สุ่ม /System.exit() ใน Java
John Squirrels
ระดับ
San Francisco

System.exit() ใน Java

เผยแพร่ในกลุ่ม
คลาสSystemใน Java มีฟิลด์และเมธอดสำหรับจัดการ SystemOne ในนั้นคือเมธอดSystem.exit ()ที่ใช้ในภาษา Java เมื่อคุณต้องการยุติโปรแกรมหรืออินสแตนซ์ JVM ที่กำลังทำงานอยู่ บรรทัดใดๆ ที่แทรกไว้ใต้วิธีการออกจะไม่สามารถเข้าถึงได้และจะไม่ถูกดำเนินการ

ไวยากรณ์ของเมธอด System.exit()

ไวยากรณ์ของ เมธอด System.exit()เป็นดังนี้

public void static(int status)
ดังนั้นคุณจะเห็นว่ามันเป็นวิธีการคงที่ จริงๆ แล้วเมธอดทั้งหมดใน คลาส Systemเป็นเมธอดแบบสแตติก exit ()วิธีการรับจำนวนเต็มเป็นอาร์กิวเมนต์และไม่ส่งคืนอะไร ดังนั้นคุณจะเรียกวิธีการออกเป็นSystem.exit(i)โดยที่ i เป็นจำนวนเต็ม จำนวนเต็มนี้เรียกว่า "สถานะการออก" และอาจเป็นองค์ประกอบที่เป็นศูนย์หรือไม่เป็นศูนย์ก็ได้ หากสถานะเป็นศูนย์ — exit(0)โปรแกรมจะยุติการทำงานได้สำเร็จ สถานะที่ไม่ใช่ศูนย์ — exit(1)บ่งชี้ถึงการยุติ JVM ที่ผิดปกติSystem.exit() ใน Java - 1

ตัวอย่างเมธอด System.exit()

มาดูสองตัวอย่างง่ายๆ ของ เมธอด exit()ที่มีสถานะเป็นศูนย์และจำนวนเต็มที่ไม่ใช่ศูนย์ ในตัวอย่างแรกของเรา มีการวนซ้ำบนอาร์เรย์ของสี เมื่อลูปตรงกับ "สีเขียว" แอปพลิเคชันจะต้องถูกยกเลิก

import java.lang.*;  
 
class Main {
  public static void main(String[] args) {
    String colors[]= {"red","blue","green","black","orange"};  
    for(int i=0;i<colors.length;i++)  {  
      System.out.println("Color is "+colors[i]);
      if(colors[i].equals("green")) {  
        System.out.println("JVM will be terminated after this line"); 
        System.exit(0); 
      }
    }  
  }
}
ผลลัพธ์ต่อไปนี้จะปรากฏขึ้น System.exit() ใน Java - 2เทอร์มินัลไม่แสดงรหัสทางออกใด ๆ ในเอาต์พุตเนื่องจากเราใช้ศูนย์เป็นสถานะ เนื่องจากศูนย์หมายถึงการยกเลิกที่สำเร็จ ไม่จำเป็นต้องพิมพ์รหัสออก ลองใช้จำนวนเต็มบวกเป็นสถานะในตัวอย่างถัดไป ในตัวอย่างนี้ เราสร้างลูปที่สร้างตัวเลขสุ่มระหว่าง 0 ถึง 10 หากตัวเลขที่สร้างขึ้นคือ 2,3 หรือ 7 แอปพลิเคชันจำเป็นต้องยุติ และควรพิมพ์ตัวเลขที่ทำให้เกิดการยกเลิก ดูรหัสด้านล่าง

import java.lang.*;  
import java.util.Random; 
 
class Main {
  public static void main(String[] args) {
    System.out.println("program will be terminated when values are 2, 3, or 7");  
    int i;
    Random number=new Random();
    while(true){
      i = number.nextInt(11);
      System.out.println("Random Number is "+i); 
      if(i==2||i==3||i==7){
        System.out.println("Value is "+ i + " your program will be terminated now");  
        System.exit(i);
      }
    }
  }
} 
เมื่อฉันรันโค้ด ฉันได้รับผลลัพธ์ดังต่อไปนี้ System.exit() ใน Java - 3อย่างที่คุณเห็น หมายเลข 3 ทำให้เกิดการสิ้นสุดของแอปพลิเคชันอย่างผิดปกติ ตอนนี้เรามาดูกันว่าสามารถใช้รหัสสถานะได้อย่างมีประสิทธิภาพอย่างไร

วิธีใช้รหัสสถานะอย่างมีประสิทธิภาพ

รหัสสถานะมักจะมีความสำคัญเมื่อคุณรันโปรแกรม Java ผ่านอินเตอร์เฟสบรรทัดรับคำสั่ง (CLI) การใช้รหัสสถานะจะเป็นประโยชน์หากคุณตั้งใจที่จะใช้โปรแกรมนี้เพื่อสื่อสารกับเครื่องมือ โปรแกรม หรือระบบปฏิบัติการมาตรฐานอื่นๆ หากโปรแกรมมีวัตถุประสงค์เพื่อสื่อสารกับระบบปฏิบัติการ คุณสามารถใช้รหัสสถานะเฉพาะของระบบปฏิบัติการได้ ตัวอย่างเช่น 128 เป็นรหัสสถานะมาตรฐานใน UNIX เพื่ออธิบาย "อาร์กิวเมนต์ที่จะออกไม่ถูกต้อง"

เมื่อใดควรใช้เมธอด System.exit

การใช้งานทั่วไปอย่างหนึ่งของSystem.exitคือเมื่อมีการแสดงอาการผิดปกติในโปรแกรม และคุณจำเป็นต้องยุติโปรแกรมทันทีโดยไม่ทำให้เกิดปัญหาเพิ่มเติม การใช้งานอื่นคือเมื่อมีความต้องการที่จะยุติโปรแกรมนอกเหนือจากวิธีการหลัก มีโครงสร้างพิเศษที่เรียกว่า "Shut Down Hooks" ใน Java ซึ่งช่วยให้นักพัฒนาสามารถเสียบส่วนย่อยของโค้ดที่ควรดำเนินการก่อนที่จะยุติ JVM มีประโยชน์อย่างยิ่งในการดำเนินการทำความสะอาด เมธอดSystem.exitใช้เพื่อเรียกใช้ hooks การปิดระบบในกรณีดังกล่าว

บทสรุป

ในบทความนี้ เราได้เรียนรู้ เมธอด System.exit()อย่างละเอียด System.exit หมายถึง ใน Java เป็นวิธีการยุติ JVM เมธอดSystem.exitจะไม่ส่งคืนสิ่งใดๆ เนื่องจากแอปพลิเคชันจะไม่เรียกใช้งานโค้ดใดๆ ที่อยู่ใต้เมธอดexit () นอกจากนี้เรายังหารือเกี่ยวกับการใช้ exit() ในโลกแห่งความเป็นจริง อย่างไรก็ตาม ชุมชน Java ไม่สนับสนุนการใช้เมธอด exit ตราบใดที่คุณมีตัวเลือกอื่น
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION