‫Chào mừng trở lại.
‫Trong video này, bạn sẽ học cách bắt lỗi và làm điều gì đó khi lỗi xảy ra và không làm cho chương trình của bạn
‫bị lỗi hoặc bất cứ điều gì tương tự.
‫Vì vậy, một cách sử dụng chung của catch và cuối cùng là lấy và sử dụng các tài nguyên trong một khối tri, đối phó với các trường
‫hợp ngoại lệ và một khối catch và giải phóng các tài nguyên trong khối cuối cùng.
‫Và điều đó có nghĩa là gì chúng ta sẽ đề cập đến trong video này.
‫Vì vậy, để không gặp lỗi, chúng ta hãy làm như sau.
‫Chúng tôi sử dụng bảng điều khiển bên phải dòng.
‫Vì vậy, hãy nhấn đúp vào CW và ở đây tôi nói vui lòng nhập một số và chúng tôi chỉ nhắc người dùng của chúng tôi
‫nhập một số và sau đó chúng tôi muốn lưu trữ số đó trong đầu vào của người dùng, sẽ chỉ là
‫một biến chuỗi và nó sẽ đọc bất cứ điều gì người dùng phải nhập hoặc phải nói, và cuối cùng nó phải là một số, phải
‫không?
‫Đó là mục tiêu mà chúng tôi có.
‫Nhưng nếu chúng ta làm như sau và người dùng nhập là int và chúng ta sử dụng int, dot pass.
‫Vì vậy, bạn đã thấy vượt qua và chúng tôi cố gắng phân tích cú pháp đầu vào của người dùng được người dùng cung cấp ở đây.
‫Chúng tôi cố gắng tạo ra một số nguyên từ nó và bây giờ nếu bạn chạy điều đó, vui lòng nhập một số và trong
‫ba và chương trình của chúng tôi thực sự ổn, hãy thêm một phím đọc dấu chấm trên bảng điều khiển ở đây.
‫Vì vậy, chúng tôi thậm chí còn thấy tốt hơn rằng chương trình vẫn ổn.
‫Vì vậy, vui lòng nhập một số.
‫Tôi chỉ cần nhập năm và chương trình của chúng tôi vẫn đang chạy và nó không bị lỗi.
‫Mọi thứ đều ổn, nên bây giờ chúng ta hãy chạy lại nó.
‫Nhưng thay vì nhập một số, chúng ta hãy thêm một chữ cái hoặc viết một số văn bản.
‫Đó không phải là.
‫Có thể chuyển thành một số nguyên mà chúng ta đang làm ở đây ở dòng 16 trong trường hợp của tôi.
‫Vì vậy, tôi sẽ nhập và chương trình của tôi bị treo và nó thông báo ngoại lệ trên chuỗi nhập ngoại lệ định dạng hệ thống
‫được xử lý không có định dạng đúng.
‫Được rồi.
‫Vì vậy, chuỗi được cung cấp bởi người dùng không ở định dạng phù hợp để phân tích cú pháp nó thành một số nguyên.
‫Và đó là tất cả những gì một ngoại lệ về định dạng.
‫Bây giờ chúng ta có thể xử lý điều đó bằng cách tạo một khối thử và bắt.
‫Vì vậy, giả sử chúng tôi sử dụng thử và ở đây bạn có thể thấy có một tùy chọn để sử dụng.
‫Hãy thử và nắm bắt.
‫C hoặc tôi có thể chỉ cần sử dụng nhấn đúp thử và nó sẽ tạo ra một lần ném ngoại lệ thử bắt cho tôi.
‫Vì vậy, bây giờ những gì tôi muốn làm là tôi muốn thử mã đó và nếu nó không hoạt động thì tôi không muốn chương trình của mình
‫bị hỏng.
‫Và đó là những gì mà toàn bộ điều này là về.
‫Vì vậy, bất kỳ lỗi nào, lỗi mã theo nghĩa là trong thời gian chạy mã lỗi ở đây sẽ được cố gắng thực
‫thi.
‫Và nếu nó không hoạt động, thì bắt.
‫BLOCK sẽ được thực hiện.
‫Vì vậy, bất cứ điều gì nằm trong phần thân này hoặc trong dấu ngoặc nhọn ở đây sẽ được thực thi.
‫Vì vậy, bây giờ chúng tôi chỉ có ném ở đây.
‫Vì vậy, bây giờ chúng ta hãy loại bỏ ném vì nó vẫn đang ném.
‫Yara Bây giờ chúng ta hãy ghi một cái gì đó vào bảng điều khiển nếu có lỗi xảy ra.
‫Vì vậy, chúng tôi nói một cái gì đó như ngoại lệ định dạng.
‫Vui lòng nhập đúng loại lần sau.
‫Và đó là thứ mà chúng tôi biết loại là gì.
‫Một người dùng thông thường sẽ không biết điều đó.
‫Vì vậy, ở đây bạn sẽ viết một cái gì đó như Vui lòng không nhập các chữ cái, mà chỉ nhập số hoặc những thứ
‫tương tự.
‫Vì vậy, chúng ta hãy xem xét ở đây một lần nữa.
‫Hãy chạy lại một lỗi thành một lỗi và sau đó chúng ta chỉ nhận được định dạng thông tin này là một ngoại lệ.
‫Vui lòng nhập đúng loại lần sau.
‫Và chương trình của chúng tôi không gặp sự cố, vì vậy chúng tôi không gặp phải trường hợp ngoại lệ này theo nghĩa chương trình của chúng tôi
‫hoặc ID của chúng tôi cho chúng tôi biết, này, có gì đó sai và bạn nên xử lý tốt mã của mình, phải không?
‫Vì vậy, đó nói chung là cấu trúc như thế nào.
‫Bạn đã thử, vì vậy bạn thử một số mã trong đây có thể gặp lỗi, có thể có ngoại lệ và
‫sau đó bạn có một khối bắt được thực thi bất cứ khi nào hủy không thành công.
‫Vì vậy, bất cứ khi nào có lỗi, khối bắt này sẽ được thực thi.
‫Những gì chúng tôi có ở đây là một bắt với một ngoại lệ.
‫Một ngoại lệ là một lỗi rất chung chung.
‫Vì vậy, nó có thể là bất kỳ loại ngoại lệ nào, nhưng nếu chúng tôi thực sự gặp phải lỗi đó, vì vậy hãy
‫loại bỏ mã này, chúng tôi sẽ xem loại ngoại lệ mà chúng tôi đã tạo.
‫Vì vậy, tôi sẽ nhập một cái gì đó giống như bất kỳ chuỗi nào tôi đang nhập.
‫Và thực ra không có gì xảy ra bởi vì chúng tôi không ném.
‫Vì vậy, chúng ta hãy dừng điều đó lại.
‫Hãy ném như chúng ta đã thấy trước đó.
‫Chỉ cần ném lỗi và chúng tôi chạy lại.
‫Tôi chỉ nhập một cái gì đó ở đây và nó cho biết hệ thống chuyển tiếp ngoại lệ.
‫Vì vậy, chúng tôi có một chút thông tin chính xác hơn về trường hợp ngoại lệ thực tế.
‫Vì vậy, bây giờ chúng ta biết, không sao, nó là một ngoại lệ định dạng, vì vậy chúng ta nên sử dụng ngoại lệ định dạng ở đây thay vì
‫ngoại lệ.
‫Vì vậy, rất nhiều trường hợp ngoại lệ ở đây.
‫Nhưng những gì chúng tôi sử dụng ở đây là một ngoại lệ về định dạng.
‫Như bạn có thể thấy ở đây, có một lớp được gọi là hệ thống, ngoại lệ định dạng đó và ngoại lệ
‫được ném ra khi định dạng của một đối số không hợp lệ hoặc khi một chuỗi định dạng tổng hợp không được định dạng tốt.
‫Đó chính xác là những gì chúng tôi có ở đây.
‫Vì vậy, chúng ta hãy loại bỏ ném này và.
‫Hãy ổn với điều đó.
‫Vì vậy, bây giờ hãy chạy nó sang một kỷ nguyên khác.
‫Bây giờ chúng ta hãy tạo một số rất dài.
‫Một cái gì đó không thể phù hợp với một chuỗi.
‫Bởi vì, như bạn có thể đoán hoặc như bạn có thể nhớ, một chuỗi chỉ có một lượng không gian cụ thể.
‫Vì vậy, hãy nói rằng tôi không chắc có bao nhiêu số thực hiện được điều này, nhưng hãy nói rằng chỉ lượng số này có
‫thể được lưu trữ trong một số nguyên.
‫Vì vậy, tất cả những điều này ở đây sẽ không hoạt động vì nó là sự cố tràn.
‫Vì vậy, có quá nhiều thông tin cho một chuỗi để xử lý.
‫Vì vậy, nếu tôi nhập cái này ngay bây giờ.
‫Tôi nhận được một ngoại lệ tràn hệ thống đầu vào.
‫Vì thế chúng ta ở đây.
‫Ngoại lệ tràn hệ thống.
‫Chà, bạn quá lớn hoặc quá nhỏ đối với RN 32.
‫Được rồi.
‫Đó là những gì tôi nói.
‫Và bây giờ chúng ta cũng cần phải nắm bắt được ngoại lệ đó.
‫Vì vậy, có hai cách để chúng tôi có thể xử lý nó.
‫Vì vậy, chúng tôi sử dụng một ngoại lệ khác ở đây và chúng tôi chỉ sử dụng ngoại lệ.
‫Vì vậy, chúng tôi chỉ xử lý tất cả các trường hợp ngoại lệ khác nói chung và chúng tôi chỉ đơn
‫giản nói
‫dấu chấm trên bảng điều khiển, đường màu đỏ, ngoại lệ chung, chẳng hạn như đã xảy ra lỗi.
‫Vì vậy, hãy tạo một số rất dài thực sự một lần nữa như thế này và hãy nhập số đó.
‫Và chúng tôi thấy chúng tôi có một ngoại lệ chung, mặc dù đó là một ngoại lệ tràn.
‫Vì vậy, bạn có thể xử lý nó theo cách đó.
‫Vì vậy, nếu bạn không biết tất cả các loại ngoại lệ khác nhau mà
‫bạn có ở đó hoặc bạn không muốn nắm bắt tất cả chúng riêng lẻ, bạn có thể làm theo cách này hoặc bạn có thể chính xác và
‫chỉ cần nhập đúng một ngoại lệ tràn.
‫Vì vậy, bây giờ nó sẽ hoạt động và bạn thấy một ngoại lệ tràn hệ thống.
‫Hãy chạy lại lần nữa và hãy nhập một số và hãy tạo một số rất dài ở đây.
‫Và chúng tôi vẫn nhận được ngoại lệ chung vì chúng tôi đã không nhập một ngoại lệ tràn văn bản khác.
‫Con số quá dài hoặc quá ngắn cho một phần 32.
‫Vì vậy, chúng ta hãy nhìn lại một lần nữa.
‫Và số ngoại lệ tràn quá dài hoặc quá ngắn trong 32.
‫Được rồi.
‫Vì vậy, đây là cách chúng ta có thể nắm bắt các trường hợp ngoại lệ nói chung.
‫Và nếu có bất kỳ ngoại lệ nào khác có thể chạy, như bạn có thể thấy, sẽ có một ngoại lệ vô hiệu đối số.
‫Vì vậy, chúng ta hãy xem điều đó có nghĩa là gì.
‫Nếu chúng ta thậm chí có thể nhận được điều đó và chúng ta thấy.
‫Một ngoại lệ.
‫Vui lòng nhập đúng loại loại lần sau.
‫Vì vậy, ngay cả khi nó trống, trong trường hợp của chúng ta, chúng ta không nhận được ngoại lệ null này vì đầu vào của chúng ta,
‫ngay cả khi chúng ta không nhập bất kỳ thứ gì, vẫn có một chuỗi trống không phải là null.
‫Vì vậy, chúng tôi không chạy trong này theo ngoại lệ thực tế này.
‫Vì vậy, như bạn thấy ở đây, bất cứ khi nào bạn cố gắng thực thi một số mã, Intel thậm chí sẽ cung cấp cho bạn một số thông tin ở đây.
‫Vì vậy, điều đó thực sự hữu ích.
‫Bạn có thể thấy có ngoại lệ đối số null, ngoại lệ định dạng và ngoại lệ tràn.
‫Vì vậy, chúng tôi thậm chí có thể thêm một ngoại lệ khác ở đây và gọi một đối số đó là ngoại lệ null hoặc ngoại lệ null
‫đối số.
‫Và chúng ta nói một cái gì đó giống như đối số null ngoại lệ.
‫Giá trị lúc này trống.
‫Vì vậy, để thậm chí chạy vào thời đại này, chúng tôi sẽ phải sử dụng null, mà chúng tôi chưa đề cập đến, nhưng chúng
‫tôi sẽ làm như vậy sau này.
‫Và nếu chúng tôi có chúng, bạn có thể thử làm điều đó.
‫Vì vậy, nếu bạn đã xem video đáng chú ý, bạn có thể thử gặp lỗi đó.
‫Được rồi.
‫Vì vậy, bây giờ bạn đã thấy làm thế nào để sử dụng try catch.
‫Và bây giờ còn một điều nữa mà tôi muốn giới thiệu cho các bạn trong video này, cuối cùng và cuối cùng cũng được
‫thực hiện như vậy.
‫Vì vậy, bạn đã sử dụng từ khóa cuối cùng và sau đó bạn sử dụng lại dấu ngoặc nhọn và trong khối mã đó ở
‫đây, vì vậy trong phần nội dung đó, bạn nhập mã sẽ được thực thi bất cứ khi nào.
‫Hãy thử và nắm bắt thực hiện của chúng tôi.
‫Không quan trọng nếu lỗi đã chạy hay lỗi không hoạt động.
‫Không có lỗi.
‫Cuối cùng, chúng tôi vẫn được gọi.
‫Vì vậy, điều này được gọi là anyways.
‫Vì vậy, điều đó có nghĩa là tốt.
‫Chúng ta sẽ thấy trong một giây.
‫Vì vậy, chúng ta hãy chạy vào một mũi tên và chúng tôi thấy chúng tôi có một ngoại lệ bốn phút và sau đó chúng tôi thấy
‫điều này được gọi là bất kỳ và đó là khối cuối cùng của chúng tôi.
‫Và ý tưởng đằng sau khối cuối cùng này là, ví dụ, nếu bạn cố gắng bắt đầu kết nối Internet
‫hoặc nếu bạn cố gắng ghi vào một tệp, cuối cùng có thể xảy ra lỗi.
‫Vì vậy, giả sử kết nối Internet bị ngắt hoặc bạn không có quyền truy cập
‫vào tệp mà bạn muốn ghi vào hoặc một số trường hợp ngoại lệ khác có thể xuất hiện và bạn muốn đóng kết nối hoặc tệp theo một trong hai
‫cách.
‫Vì vậy, bạn đã mở tệp và bây giờ bạn cố gắng ghi vào tệp đó và sau khi bạn đã ghi vào tệp đó trong khối
‫thử và có thể nó hoạt động, có thể nó không hoạt động, nhưng điều bạn chắc chắn
‫muốn làm là đóng tệp lại, hoặc bạn cố tải xuống thứ gì đó từ internet và nếu nó hoạt động hoặc nó không hoạt
‫động, không thành vấn đề.
‫Sau đó, bạn cần phải đóng kết nối với Internet và đó là điều bạn sẽ
‫làm trong tệp.
‫KHỐI Và điều đó rất tiện dụng và khá quan trọng khi làm việc với các loại đầu ra đầu vào hoặc vâng, nói chung
‫là với các kết nối Internet, Bluetooth hoặc bất cứ thứ gì.
‫Vì vậy, như bạn thấy, có rất nhiều điều để biết về thử và nắm bắt, nhưng những điều quan trọng nhất bạn đã
‫thấy rồi.
‫Vì vậy, bây giờ bạn biết làm thế nào để sử dụng thử bạn biết làm thế nào để sử dụng, nắm bắt làm thế nào để tìm ra các trường hợp ngoại lệ.
‫Trong một số trường hợp, nó không quá rõ ràng.
‫Vì vậy, trong một số trường hợp, bạn sẽ không kiểm tra loại ngoại lệ nào có thể chạy.
‫Nhưng nếu bạn gặp phải một ngoại lệ trong mã của mình, thì bạn sẽ biết loại ngoại lệ đó
‫là vì tốt, ý tưởng là như vậy Microsoft Visual Studio sẽ cho bạn biết đó là
‫ngoại lệ nào và sau đó bạn chắc chắn nên cố gắng nắm bắt ngoại lệ đó hoặc chỉ sử dụng một loại ngoại lệ chung okeydokey.
‫Vì vậy, bây giờ là một thử thách nhỏ đối với bạn bởi vì luôn phải có một thử thách nhỏ, nếu
‫không, bạn có thể cảm thấy nhàm chán một chút, hoặc bạn có thể lười biếng một chút.
‫Điều thực sự quan trọng là bạn cũng cần cố gắng nhập mã và tự mình kiểm tra.
‫Vì vậy, thử thách nhỏ là hãy tiếp tục và chia cho không.
‫Vì vậy, đó là đơn giản.
‫Chỉ cần cố gắng chia cho không và sử dụng hai biến cho điều đó.
‫Được rồi, hãy tiếp tục và thử điều đó.
‫Vì vậy, tôi sẽ cố gắng chia cho số không.
‫Tôi sẽ sử dụng hai số nguyên và không.
‫Một sẽ là năm và n không có hai sẽ bằng không.
‫Và bây giờ tôi sẽ sử dụng một kết quả sẽ được nhập vào đây.
‫Kết quả bằng num một chia cho num hai.
‫Vì vậy, bây giờ chúng ta hãy thử điều đó mà không cần thử và nắm bắt thực sự trước khi chúng ta sử dụng thử và bắt.
‫Vì vậy, hãy chạy nó.
‫Vui lòng nhập một số và sau đó chia cho số không ngoại lệ, và tôi hy vọng bạn xử lý được điều đó.
‫Vì vậy, bây giờ chúng ta hãy thử và nắm bắt.
‫Vì vậy, hãy thử hoặc thực sự chỉ làm cho nó dễ dàng hơn.
‫Vào đi.
‫Hãy thử ở đây và sử dụng tab đôi khối.
‫Và bây giờ trong thời gian thử, tôi muốn chạy nó.
‫Và nếu nó không hoạt động, tôi chỉ đơn giản muốn viết một cái gì đó giống như C double.
‫Bạn không thể chia cho số không.
‫Và bây giờ là điều này.
‫Ngoại lệ mà chúng tôi vừa có nên chúng tôi sẽ xem xét.
‫Chia cho 0 cố gắng chia cho 0 và nó được gọi là ngoại lệ chia cho 0.
‫Vì vậy, nếu bạn muốn tìm thấy điều đó, bạn có thể tìm thấy điều đó ở dưới đây.
‫Vì vậy, tôi sẽ chỉ sử dụng chính xác điều đó.
‫Tôi sẽ thay thế ngoại lệ bằng ngoại lệ chia cho 0.
‫Vì vậy, bây giờ chúng ta hãy chạy lại mã đó.
‫Vui lòng nhập số trước đó và sau đó nó cho biết có thể chia cho số không.
‫Đúng.
‫Vì vậy, tôi hy vọng bạn thử điều đó và tôi hy vọng bạn đạt được điều đó.
‫Và bây giờ bạn có thể thấy cách bạn có thể tạo thử của riêng bạn và nắm bắt điều này.
‫Và trong video tiếp theo, chúng ta sẽ tiếp tục và sử dụng một số thứ lạ mắt hơn.
‫Vì vậy, hẹn gặp bạn ở đó.