Computer >> Máy Tính >  >> Lập trình >> Ruby

Hiểu cấu trúc phân cấp ngoại lệ của Ruby

Ngoại lệ chỉ là các lớp trong Ruby. Hệ thống phân cấp ngoại lệ ngoại lệ được tạo thành từ tất cả các lớp kế thừa từ Exception.

Đây là hệ thống phân cấp ngoại lệ cho thư viện chuẩn của Ruby 2.1.

 

Công dụng thực tế

Lý do mà các ngoại lệ được sắp xếp thành một cây lớp là để bạn có thể dễ dàng giải cứu các loại ngoại lệ tương tự.

Ví dụ:hãy xem xét mã:

  begin do_somethingrescue StandardError => eend  

Điều này sẽ giải cứu không chỉ StandardError, mà còn bất kỳ ngoại lệ nào kế thừa từ nó. Điều đó xảy ra với khá nhiều ngoại lệ mà bạn sẽ quan tâm.

Trong mã của riêng bạn, bạn có thể có tất cả các ngoại lệ tùy chỉnh của mình kế thừa từ một lớp cơ sở duy nhất:

  module MyLib class Error  e # Giải cứu bất kỳ ngoại lệ nào được xác định ở trên