Results (
Vietnamese) 2:
[Copy]Copied!
Các biến trong .NET là kiểu tham chiếu hoặc các loại giá trị. Giá trị các loại nguyên thủy như là số nguyên và các phép toán hay các cấu trúc (và có thể được xác định bởi vì họ thừa hưởng từ System.ValueType). Biến Boolean, khi tuyên bố, có một giá trị mặc định: bool mybool; // mybool == false loại tham khảo, khi tuyên bố, không có một giá trị mặc định: lớp ExampleClass {} ExampleClass exampleClass; // == Null Nếu bạn cố gắng truy cập vào một thành viên của một trường lớp bằng cách sử dụng một tham chiếu null sau đó bạn sẽ có được một System.NullReferenceException. . Mà là giống như đối tượng tham chiếu không được đặt để một thể hiện của một đối tượng Các mã sau đây là một cách đơn giản để tái tạo này: static void Main (string [] args) {var exampleClass = ExampleClass mới (); var returnedClass = exampleClass. ExampleMethod (); returnedClass.AnotherExampleMethod (); // NullReferenceException đây.} Class ExampleClass {công ReturnedClass ExampleMethod () {trở lại null;}} class ReturnedClass {public void AnotherExampleMethod () {}} Đây là một lỗi rất phổ biến và có thể xảy ra vì tất cả các loại lý do. Nguyên nhân gốc rễ thật sự phụ thuộc vào kịch bản cụ thể mà bạn đã gặp phải. Nếu bạn đang sử dụng một API hoặc cách gọi phương pháp đó có thể trở lại null thì điều quan trọng là để xử lý này một cách duyên dáng. Phương pháp chủ yếu trên có thể được biến đổi theo một cách mà các NullReferenceException không bao giờ được nhìn thấy bởi một người dùng: static void Main (string [] args) {var exampleClass = ExampleClass mới (); var returnedClass = exampleClass.ExampleMethod (); nếu (returnedClass == null) {// ném một ngoại lệ có ý nghĩa hoặc đưa ra một số thông tin phản hồi hữu ích cho người sử dụng! return;} returnedClass.AnotherExampleMethod ();} Tất cả những điều trên thực sự chỉ là gợi ý NET Loại cơ bản, để biết thêm thông tin tôi d nên hoặc nhặt CLR thông qua C # hoặc đọc MSDN bài viết này bởi cùng một tác giả - Jeffrey Richter. Ngoài ra kiểm tra này, phức tạp hơn nhiều, ví dụ khi bạn có thể gặp phải một NullReferenceException. Một số nhóm sử dụng Resharper làm của JetBrains thuộc tính chú thích mã để làm nổi bật nơi null được (không) mong đợi.
Being translated, please wait..
