
Kiến thức cốt lõi ngôn ngữ C#
Nullable types, generics, attributes, extension methods, type casting, enum nâng cao
1Cú pháp đúng để khai báo một biến nullable int trong C# là gì?
Cú pháp đúng để khai báo một biến nullable int trong C# là gì?
Câu trả lời
Trong C#, một nullable type cho value types được khai báo bằng hậu tố '?' sau kiểu (int?, bool?, DateTime?). Điều này cho phép value types có giá trị null, điều vốn không thể theo mặc định. Nullable types hữu ích để biểu diễn sự vắng mặt của giá trị trong các tình huống database hoặc API.
2Toán tử nào cho phép cung cấp giá trị mặc định nếu một biến nullable là null?
Toán tử nào cho phép cung cấp giá trị mặc định nếu một biến nullable là null?
Câu trả lời
Toán tử null-coalescing '??' trả về giá trị bên trái nếu nó không null, ngược lại trả về giá trị bên phải. Toán tử này rất hữu ích để xử lý nullable types và tránh NullReferenceException. Cũng có toán tử '??=' cho phép gán có điều kiện được giới thiệu trong C# 8.
3Sự khác biệt giữa casting với '(Type)' và 'as' trong C# là gì?
Sự khác biệt giữa casting với '(Type)' và 'as' trong C# là gì?
Câu trả lời
Phép cast '(Type)object' ném ra InvalidCastException nếu chuyển đổi thất bại, trong khi toán tử 'as' trả về null khi thất bại. Toán tử 'as' chỉ hoạt động với reference types và nullable value types. Dùng 'as' để tránh ngoại lệ trong các trường hợp null là một giá trị chấp nhận được.
Làm thế nào để kiểm tra một biến nullable có giá trị trước khi sử dụng?
Cú pháp để khai báo một lớp generic với ràng buộc kiểu là gì?
+12 câu hỏi phỏng vấn
Các chủ đề phỏng vấn .NET khác
Cơ bản về C#
LINQ & Delegates
Kiến thức cơ bản về ASP.NET Core
Vòng đời request trong ASP.NET Core
Configuration & Settings
Vòng đời ứng dụng
Dependency Injection
Entity Framework Core
Minimal APIs
Phát triển Web API
Async trong ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Tuần tự hóa JSON
Entity Framework Core nâng cao
Các tính năng nâng cao của C#
Clean Architecture
Logging, Monitoring & Observability
Kiểm thử đơn vị & xUnit
Kiểm thử tích hợp
Docker & Containerization
Quản lý gói NuGet
Memory Management & GC
Lập trình phản ứng
Async/await & Mẫu thiết kế
.NET Design Patterns
Tối ưu hóa hiệu năng
Bảo mật & Best Practices
SignalR & Thời gian thực
Kiến trúc Microservices
Nắm vững .NET cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí