2016-09-16 23 views

Trả lời

89

fileprivate là một trong các công cụ sửa đổi truy cập Swift 3 mới thay thế private theo nghĩa của nó. fileprivate định nghĩa một thực thể (lớp, mở rộng, thuộc tính, ...) là riêng tư cho tất cả mọi người bên ngoài tệp nguồn được khai báo, nhưng có thể truy cập được tới tất cả các thực thể trong tệp nguồn đó.

private hạn chế pháp nhân trong phạm vi bao quanh trực tiếp.

+5

ý bạn là gì bởi "phạm vi bao quanh trực tiếp"? Khi nào tôi chỉ sử dụng 'private' thay vì' fileprivate'? –

+4

phạm vi bao quanh là tập hợp các khối hoặc tệp trong phần mở rộng này trong đó một thực thể được khai báo, 'private' có nghĩa là ẩn chi tiết triển khai hoặc giữ những thứ bị hạn chế với chủ sở hữu trong khi' fileprivate' có thể được sử dụng để chia sẻ chức năng chung giữa tất cả các thực thể trong cùng một tệp. – xhamr

+2

Trong 'riêng tư <3.0' nhanh chóng hoạt động như 'fileprivate' trong nhanh chóng 3.0. Nếu bạn tuyên bố nhanh chóng 2.3 ví dụ: hai lớp có các biến riêng nhưng trong cùng một tệp, chúng vẫn truy cập vào từng biến được đánh dấu 'riêng tư'. – Robert

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