V akomkoľvek programovacom jazyku potrebuje program identifikátory na ukladanie rôznych hodnôt, ktoré možno použiť v celom programe. Tieto identifikátory sú premenné.
Premenná v jazyku Java
- Premenná je názov priradený hodnote, ktorá je uložená v systémovej pamäti. Hodnotu je možné aktualizovať počas vykonávania programu.
- Pri programovaní v jazyku Java je potrebné, aby ich premenné používané pre program najskôr deklarovali.
- Premenná je deklarovaná pomocou typu údajov, za ktorým nasleduje názov identifikátora. Premenná môže byť inicializovaná v čase deklarácie alebo jej môže byť priradená hodnota prevzatá od užívateľa počas vykonávania programu.
- V Jave sú v zásade tri typy premenných,
- Miestna premenná Java
- Premenná inštancie Java
- Statická premenná Java / premenná triedy Java
Premenná inštancie Java
- Premenné, ktoré sú deklarované vo vnútri triedy, ale mimo rozsahu akejkoľvek metódy, sa v jazyku Java nazývajú premenné inštancie.
- Premenná inštancie sa inicializuje v čase načítania triedy alebo pri vytváraní objektu triedy.
- Premennú inštancie možno deklarovať pomocou rôznych modifikátorov prístupu dostupných v jazyku Java, ako sú predvolené, súkromné, verejné a chránené.
- Premenné inštancie rôznych typov majú predvolené hodnoty, ktoré sú špecifikované v ďalšom bode.
Vlastnosti
- Ak chcete použiť premennú inštancie, musí byť vytvorený objekt triedy.
- Premenná inštancie je zničená, keď je zničený objekt, s ktorým je spojená.
- Premenná inštancie nemusí byť povinná inicializovať.
- Premenné inštancie sú prístupné v rámci tej istej triedy, ktorá ich deklaruje.
Obmedzenia premennej inštancie
- Nemôže byť deklarovaný ako statický, abstraktný, striftp, synchronizovaný a natívny.
- Môže byť vyhlásený za konečný a prechodný.
- Môže to byť ktorýkoľvek zo štyroch modifikátorov prístupu dostupných v jazyku Java (súkromný, verejný, chránený a predvolený).
Predvolené hodnoty premenných inštancií v jazyku Java
Premenné inštancie v jazyku Java majú rôzne typy údajov, ako je uvedené nižšie;
trieda vs objekt v jave
Typ premennej inštancie | Základné hodnoty |
---|---|
boolovská hodnota | falošný |
byte | (bajt) 0 |
krátky | (krátke) 0 |
int | 0 |
dvojitý | 0,0 d |
plavák | 0,0 |
dlhý | 0 l |
Objekt | nulový |
char | u0000 |
Použime premennú inštancie v programe Java.
Použitie premennej inštancie v programe Java
V nasledujúcom programe Java je trieda Rekordy študentov je deklarovaný a premenné inštancie sa vytvárajú pomocou rôznych modifikátorov prístupu.
Studentsrecords.java
public class Studentsrecords { /* declaration of instance variables. */ public String name; //public instance String division; //default instance private int age; //private instance /* Constructor that initialize an instance variable. */ public Studentsrecords(String sname) { name = sname; } /* Method to intialize an instance variable. */ public void setDiv(String sdiv) { division = sdiv; } /* Method to intialize an instance variable. */ public void setAge(int sage) { age = sage; } /* Method to display the values of instance variables. */ public void printstud() { System.out.println('Student Name: ' + name ); System.out.println('Student Division: ' + division); System.out.println('Student Age: ' + age); } /* Driver Code */ public static void main(String args[]) { Studentsrecords s = new Studentsrecords('Monica'); s.setAge(14); s.setDiv('B'); s.printstud(); } }
Výkon:
počítač vynájdený rok
Student Name: Monica Student Division: B Student Age: 14
Vyššie uvedený program Java inicializuje premenné inštancie deklarovaním objektu triedy Rekordy študentov . Hodnoty premenných inštancií meno, rozdelenie, a Vek sa zobrazujú pomocou vytlačené () metóda.
Rozdiel medzi lokálnymi, inštanciami a statickými premennými v Jave
pán č. | Lokálne premenné | Premenné inštancie | Statické premenné |
---|---|---|---|
1. | Premenné deklarované v rámci metódy sú lokálne premenné. | Premenná inštancie je deklarovaná vo vnútri triedy, ale mimo akejkoľvek metódy alebo bloku. | Statické premenné sú deklarované vo vnútri triedy, ale mimo metódy začínajúce kľúčovým slovom static. |
2. | Rozsah lokálnej premennej je obmedzený na metódu, v ktorej je deklarovaná. | Premenná inštancie je prístupná v celej triede. | Statická premenná je prístupná v celej triede. |
3. | Lokálna premenná začína svoju životnosť pri vyvolaní metódy. | O jeho životnosti rozhoduje objekt spojený s premennou inštancie. | Statická premenná má rovnakú životnosť ako program. |
4. | Lokálna premenná je prístupná všetkým objektom triedy. | Premenná inštancie má rôzne kópie pre rôzne objekty. | Statické premenné majú iba jednu kópiu celej triedy. |
5. | Používa sa na ukladanie hodnôt, ktoré sú potrebné pre konkrétnu metódu. | Používa sa na ukladanie hodnôt, ku ktorým je potrebné pristupovať rôznymi metódami triedy. | Používa sa na ukladanie konštánt. |