2010-07-03 48 views
6

Tôi vừa mới chọn Thu thập thông tin và đang phát xung quanh việc chuyển đổi trường thành thuộc tính. Tôi muốn các thuộc tính này được bảo vệ, nhưng Resharper không muốn cho tôi lựa chọn đó. Thay vào đó chỉ có một tùy chọn Protected Internal. Điều này khiến tôi suy nghĩ. Hoặc là có một quy tắc ở đâu đó rằng các thuộc tính phải luôn được 'bảo vệ nội bộ' thay vì chỉ được 'bảo vệ'. Hoặc tôi chỉ không biết cách sử dụng resharper. Đó là nó?Thuộc tính nội bộ được bảo vệ so với Thuộc tính được bảo vệ và Chia sẻ lại

Cập nhật: Đã liên hệ với Jetbrains và họ đã xác định hành vi này là lỗi và đã đưa ra báo cáo lỗi. Câu trả lời của Marc về cơ bản là chính xác về cách sử dụng 'nội bộ được bảo vệ' để anh ta nhận được dấu tích.

+0

Bạn đã khai báo lớp học là công khai? Mặc định là nội bộ. Khai báo các thuộc tính của một lớp nội bộ như là nội bộ là khá ngớ ngẩn, nó đòi hỏi một công cụ tái cấu trúc khi bạn cấu trúc lại để làm cho lớp công khai. Mặc dù điều đó không đảm bảo bạn sẽ chuyển từ phiên bản demo sang phiên bản bán lẻ. –

+0

Có - lớp học được khai báo là công khai. Infact, nó không phải lúc đầu, nhưng tôi đã tạo ra một dự án thử nghiệm chỉ với lớp và cố tình tuyên bố nó công khai. Tôi vẫn có cùng một vấn đề. –

Trả lời

4

Các trường hiện tại là gì? public? Tôi tự hỏi nếu bạn có một số mã trong các loại khác đã được chạm vào các thuộc tính, và do đó sẽ phá vỡ nếu họ là chỉprotected. Tôi không biết cách resharper cảm thấy về nó, nhưng nó không phải là cần thiết (hoặc thậm chí đặc biệt phổ biến) để làm cho mọi thứ protected internal - vì vậy protectednên là một lựa chọn hợp lý.

+0

Các trường được bảo vệ để bắt đầu và mã biên dịch tốt với các thuộc tính như vừa được bảo vệ –

Các vấn đề liên quan