Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Khác biệt giữa namespace trong C# và package trong Java


Package trong Java

Package được sử dụng trong Java để ngăn chặn xung đột tên, kiểm soát truy cập, làm cho việc tìm kiếm/định vị và sử dụng các lớp, giao diện, enum và annotation dễ dàng hơn, v.v.

Namespace được thiết kế để cung cấp cách giữ một tập hợp tên tách biệt khỏi tập hợp khác. Tên lớp được khai báo trong một namespace không xung đột với cùng tên lớp được khai báo trong namespace khác.

Định nghĩa Package như sau:

package package_name;

Hạn chế truy cập của các lớp (hoặc thành viên lớp) chỉ cho các lớp trong cùng package, nhưng trong C# với namespace bạn không thể đạt được điều này.

Namespace trong C#

Namespace được thiết kế để cung cấp cách giữ một tập hợp tên tách biệt khỏi tập hợp khác. Tên lớp được khai báo trong một namespace không xung đột với cùng tên lớp được khai báo trong namespace khác.

Định nghĩa Namespace như sau:

namespace namespace_name { 
    // khai báo mã 
}

Trong Java, cấu trúc thư mục phải khớp với cấu trúc package, nhưng không bắt buộc trong C#.

Trong C#, có thể thêm nhiều namespace trong một file, trong khi trong Java, một file thuộc về một package.