Klíčový rozdíl – proměnné třídy a instance
Většina moderních programovacích jazyků podporuje objektově orientované programování. Objekt obsahuje data nebo atributy. Objekt má určité chování. Jsou známé jako metody. Program lze modelovat pomocí objektů. Software je sbírka programů. Proto lze software navrhnout a implementovat pomocí objektů. Objekty interagují pomocí metod. Objektově orientované programování zlepšuje modularitu kódu a opětovnou použitelnost. Měla by existovat třída pro vytváření objektů. Třída je plán pro vytvoření objektu. Objekt je tedy instancí třídy. Při programování bylo potřeba data uložit. Data se ukládají do paměťových míst. Tato místa v paměti se nazývají proměnné. Členská proměnná je proměnná, která je spojena s určitým objektem. Je přístupný pro všechny jeho metody. Existují dva typy členských proměnných, kterými jsou proměnné třídy a proměnné instance. Klíčový rozdíl mezi proměnnými třídy a instance spočívá v tom, že pokud existuje pouze jedna kopie proměnné sdílená se všemi instancemi třídy, tyto proměnné se nazývají proměnné třídy a pokud má každá instance třídy svou vlastní kopii proměnné, pak tyto proměnné se nazývají proměnné instance.
Co jsou proměnné třídy?
Pokud existuje pouze jedna kopie proměnné sdílená se všemi instancemi třídy, tyto proměnné se nazývají jako proměnné třídy. Proměnné třídy jsou proměnné deklarované v rámci třídy mimo jakoukoli metodu. Tyto proměnné obsahují klíčové slovo static. Tyto proměnné jsou spojeny s třídou, nikoli s objektem.
Obrázek 01: Proměnné třídy a proměnné instance
Odkaz na níže uvedený kód s proměnnými třídy.
veřejná třída Zaměstnanec {
public static int id;
veřejný statický dvojnásobný plat;
}
public class Test {
public static void main(string args){
Zaměstnanec e1=nový zaměstnanec();
Zaměstnanec e2=nový zaměstnanec();
}
}
Podle výše uvedeného programu jsou e1 a e2 objekty typu Zaměstnanec. Oba budou mít stejnou kopii paměti. Pokud e1.id=1 a tisk e2.id také dá hodnotu 1. Je možné vytisknout hodnoty id a mzdy pomocí názvu třídy Zaměstnanec, jako je Zaměstnanec.id, Employee.plat atd.
Co jsou proměnné instance?
Když má každá instance třídy svou vlastní kopii proměnné, pak jsou tyto proměnné známé jako proměnné instance. Viz níže uvedený program.
veřejná třída Zaměstnanec {
public int id;
veřejný dvojnásobný plat;
}
test veřejné třídy{
public static void main(string args){
Zaměstnanec e1=nový zaměstnanec();
e1.id=1;
e1.salary=20000;
Zaměstnanec e2=nový zaměstnanec();
e2.id=2;
e2. plat=25000;
}
}
V hlavním programu jsou e1 a e2 odkazy na objekty typu Zaměstnanec. Je možné přiřadit hodnoty pro id a plat pomocí tečkového operátoru, jako je e1.id, e1. plat atd. ID a plat ve třídě Zaměstnanec jsou známé jako proměnné instance.e1 a e2 jsou samostatné objekty. Každý objekt bude mít samostatnou kopii proměnných instance. e1 bude mít samostatné id a plat a e2 bude mít samostatné id a plat. Proměnné instance se tedy vytvoří při vytvoření objektu nebo instance.
Jaké jsou podobnosti mezi proměnnými třídy a instance?
- Oba jsou typy proměnných.
- Obě proměnné jsou uvnitř třídy, ale mimo jakoukoli metodu.
Jaký je rozdíl mezi proměnnými třídy a instance?
Proměnné třídy vs proměnné instance |
|
Proměnné třídy jsou proměnné, ve kterých je pouze jedna kopie proměnné sdílená se všemi instancemi třídy. | Proměnné instance jsou proměnné, pokud má každá instance třídy svou vlastní kopii proměnné. |
Asociace | |
Proměnné třídy jsou přidruženy ke třídě. | Proměnné instance jsou spojeny s objekty. |
Počet kopií | |
Proměnné třídy vytvářejí jednu kopii pro všechny objekty. | Proměnné instance vytvářejí samostatnou kopii pro každý objekt. |
Klíčová slova | |
Proměnné třídy by měly mít statické klíčové slovo. | Proměnné instance nevyžadují speciální klíčové slovo, jako je static. |
Shrnutí – Proměnné třídy vs. instance
Objektově orientované programování je hlavní programovací paradigma. Pomáhá modelovat software pomocí objektů. Objekty jsou vytvářeny pomocí tříd. Vytváření objektů je také známé jako konkretizace. Třída poskytuje plán pro vytvoření objektu. Členská proměnná je proměnná, která je spojena s určitým objektem. Je přístupný pro všechny jeho metody. Existují dva typy členských proměnných, jako jsou proměnné třídy a proměnné instance. Rozdíl mezi proměnnými třídy a instance spočívá v tom, že pokud existuje pouze jedna kopie proměnné sdílená se všemi instancemi třídy, tyto proměnné se nazývají proměnné třídy a pokud má každá instance třídy svou vlastní kopii proměnné, pak proměnné se nazývají proměnné instance.
Stáhněte si PDF verzi proměnných třídy vs. instance
Verzi tohoto článku si můžete stáhnout ve formátu PDF a použít ji pro offline účely podle citace. Stáhněte si prosím verzi PDF zde: Rozdíl mezi proměnnými třídy a instance