คำถามติดแท็ก throws

8
เหตุใด“ ข้อยกเว้นการโยน” จึงจำเป็นเมื่อเรียกใช้ฟังก์ชัน
class throwseg1 { void show() throws Exception { throw new Exception("my.own.Exception"); } void show2() throws Exception // Why throws is necessary here ? { show(); } void show3() throws Exception // Why throws is necessary here ? { show2(); } public static void main(String s[]) throws Exception // Why throws …

10
จะใช้คีย์เวิร์ดพ่นสไตล์ Java ใน C # ได้อย่างไร?
ใน Java throwsคีย์เวิร์ดอนุญาตให้มีเมธอดเพื่อประกาศว่าจะไม่จัดการข้อยกเว้นด้วยตัวมันเอง แต่จะโยนมันไปที่เมธอดการเรียก มีคำหลัก / แอตทริบิวต์ที่คล้ายกันใน C # หรือไม่? หากไม่มีสิ่งที่เทียบเท่าคุณจะทำเอฟเฟกต์เดียวกัน (หรือคล้ายกัน) ให้สำเร็จได้อย่างไร?

1
จับข้อยกเว้นและ rethrowing แต่ไม่ใช่ข้อยกเว้น
ฉันสะดุดรหัสมองสิ่งนี้: void run() { try { doSomething(); } catch (Exception ex) { System.out.println("Error: " + ex); throw ex; } } void doSomething() { throw new RuntimeException(); } รหัสนี้ทำให้ฉันประหลาดใจเพราะมันดูเหมือนว่า - วิธีการที่run()มีความสามารถในการโยนExceptionเพราะมันจับExceptionแล้ว rethrows แต่วิธีการที่ไม่ได้ประกาศว่าจะโยนExceptionและเห็นได้ชัดว่าไม่จำเป็นต้องเป็น รหัสนี้รวบรวมได้ดี (ใน Java 11 อย่างน้อย) ความคาดหวังของฉันคือฉันจะต้องประกาศthrows Exceptionในrun()-method ข้อมูลเพิ่มเติม ในทำนองเดียวกันหากdoSomethingมีการประกาศให้โยนIOExceptionดังนั้นIOExceptionจะต้องประกาศในวิธีการrun()เท่านั้นแม้ว่าExceptionจะถูกจับและโยนใหม่ void run() throws IOException { try { doSomething(); } …
10 java  exception  throws 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.