řízení Přístupu k Členům Třídy

řízení Přístupu k Členům Třídy

úroveň Přístupu modifikátory určit, zda ostatní třídy mohou používat určité oblasti nebo vyvolat konkrétní metody. Existují dvě úrovně řízení přístupu:

  • na nejvyšší úrovni – public nebo package-private (žádný explicitní modifikátor).
  • Na členské úrovni—public private protected, nebo balíček-vlastní (žádné explicitní modifikátor).,

třída může být deklarována modifikátorem public, v takovém případě je tato třída viditelná pro všechny třídy všude. Pokud třída nemá modifikátor (Výchozí, také známý jako package-private), je viditelný pouze v rámci vlastního balíčku (balíčky jsou pojmenovány skupiny souvisejících tříd — dozvíte se o nich v pozdější lekci.)

na úrovni člena můžete také použít modifikátor public nebo žádný modifikátor (balíček-soukromý) stejně jako u tříd nejvyšší úrovně a se stejným významem., Pro členy existují dva další modifikátory přístupu: private a protected. Modifikátor private určuje, že člen může být přístupný pouze ve své vlastní třídě. Modifikátor protected určuje, že člen může být přístupný pouze ve svém vlastním balíčku (jako u balíčku-private) a navíc podtřídou své třídy v jiném balíčku.

následující tabulka ukazuje přístup k členům povoleným každým modifikátorem.,Modifier Class Package Subclass World public Y Y Y Y protected Y Y Y N no modifier Y Y N N private Y N N N

The first data column indicates whether the class itself has access to the member defined by the access level., Jak můžete vidět, třída má vždy přístup ke svým vlastním členům. Druhý sloupec označuje, zda mají třídy ve stejném balíčku jako třída (bez ohledu na jejich rodičovství) přístup k členovi. Třetí sloupec udává, zda podtřídy třídy deklarované mimo tento balíček mají přístup k členovi. Čtvrtý sloupec označuje, zda mají všechny třídy přístup k členovi.

úrovně přístupu vás ovlivňují dvěma způsoby., Za prvé, když používáte třídy, které pocházejí z jiného zdroje, jako jsou třídy na platformě Java, úrovně přístupu určují, které členy těchto tříd mohou vaše vlastní třídy používat. Za druhé, když píšete třídu, musíte se rozhodnout, jakou úroveň přístupu by měla mít každá členská proměnná a každá metoda ve vaší třídě.

podívejme se na sbírku tříd a uvidíme, jak úrovně přístupu ovlivňují viditelnost. Následující obrázek ukazuje čtyři třídy v tomto příkladu a jak jsou příbuzné.,

Třídy a Balíčky Příkladu Používá k Ilustraci Úrovně Přístupu

následující tabulka ukazuje, kde členové Alpha třídy jsou viditelné pro jednotlivé modifikátory přístupu, který může být aplikován na ně.,ha Beta Alphasub Gamma public Y Y Y Y protected Y Y Y N no modifier Y Y N N private Y N N N

Tips on Choosing an Access Level:

If other programmers use your class, you want to ensure that errors from misuse cannot happen., Úrovně přístupu vám mohou pomoci.

  • použijte nejvíce omezující úroveň přístupu, která má smysl pro konkrétního člena. Použijte private, pokud nemáte dobrý důvod.
  • Vyhněte sepublic pole s výjimkou konstant. (Mnoho příkladů v tutoriálu používá veřejná pole. To může pomoci stručně ilustrovat některé body, ale nedoporučuje se pro výrobní kód.) Veřejná pole mají tendenci vás propojit s konkrétní implementací a omezit vaši flexibilitu při změně kódu.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *