Tôi hiểu rằng quy tắc chung trong OOD là giảm thiểu quyền truy cập vào tất cả các thành viên của một đối tượng nhất định có thể được thực hiện hợp lý.Thực hành sửa đổi truy cập tốt nhất trong C# so với Java
C# và Java cả hai dường như triển khai cùng một bộ công cụ sửa đổi truy cập; Tuy nhiên, một cái gì đó đã hoang mang tôi một thời gian bây giờ là lý do tại sao các lớp Java dường như chủ yếu được tuyên bố là công khai trong khi các lớp C# dường như chủ yếu được khai báo là mặc định.Có một số sự tinh tế đối với những ngôn ngữ này áp đặt những khác biệt này hay chỉ đơn giản là vấn đề về quy ước hay gì?
Tôi thấy mình thường xuyên trải qua mã C# (thường xuyên làm cho hầu hết các lớp công khai, ngoại trừ lớp bên trong, lớp ẩn danh và các lớp phạm vi hẹp và hữu dụng khác). Tôi có thể thiếu một cái gì đó quan trọng.
(tất cả các ý kiến liên quan đến thực tế là nó đóng cửa chưa hoàn thành; tôi đã xóa chúng, vì họ không thêm gì bây giờ là câu hỏi đã được sửa và mở lại) –