Maybaygiare.org

Blog Network

Java-Variable Types

advertenties

een variabele biedt ons benoemde opslag die onze programma ‘ s kunnen manipuleren. Elke variabele in Java heeft een specifiek type, dat de grootte en lay-out van het geheugen van de variabele bepaalt; het bereik van waarden die kunnen worden opgeslagen in dat geheugen; en de set van operaties die kunnen worden toegepast op de variabele.

u moet alle variabelen declareren voordat ze gebruikt kunnen worden. Hierna volgt de basisvorm van een variabele declaratie –

data type variable ...] ;

Hier is het gegevenstype een van Java ‘ s datatypes en de variabele is de naam van de variabele. Als u meer dan één variabele van het opgegeven type wilt declareren, kunt u een door komma ‘ s gescheiden lijst gebruiken.

Hier volgen geldige voorbeelden van variabele declaratie en initialisatie in Java –

voorbeeld

int a, b, c; // Declares three ints, a, b, and c.int a = 10, b = 10; // Example of initializationbyte B = 22; // initializes a byte type variable B.double pi = 3.14159; // declares and assigns a value of PI.char a = 'a'; // the char variable a iis initialized with value 'a'

Dit hoofdstuk zal de verschillende variabele types die beschikbaar zijn in Java taal uitleggen. Er zijn drie soorten variabelen in Java −

  • lokale variabelen
  • Instance variabelen
  • Klasse / statische variabelen

lokale variabelen

  • lokale variabelen worden gedeclareerd in methoden, constructors of blokken.

  • lokale variabelen worden aangemaakt wanneer de methode, constructor of blok wordt ingevoerd en de variabele wordt vernietigd zodra deze de methode, constructor of blok verlaat.

  • Toegangsmodifiers kunnen niet gebruikt worden voor lokale variabelen.

  • lokale variabelen zijn alleen zichtbaar binnen de opgegeven methode, constructor of blok.

  • lokale variabelen worden intern geïmplementeerd op stack-niveau.

  • Er is geen standaardwaarde voor lokale variabelen, dus lokale variabelen moeten worden gedeclareerd en een initiële waarde moet worden toegekend voor het eerste gebruik.

voorbeeld

Hier is leeftijd een lokale variabele. Dit wordt gedefinieerd binnen pupAge () methode en de reikwijdte is beperkt tot alleen deze methode.

public class Test { public void pupAge() { int age = 0; age = age + 7; System.out.println("Puppy age is : " + age); } public static void main(String args) { Test test = new Test(); test.pupAge(); }}

Dit zal het volgende resultaat opleveren −

Output

Puppy age is: 7

voorbeeld

volgend voorbeeld gebruikt leeftijd zonder het te initialiseren, dus het zou een fout geven op het moment van compilatie.

public class Test { public void pupAge() { int age; age = age + 7; System.out.println("Puppy age is : " + age); } public static void main(String args) { Test test = new Test(); test.pupAge(); }}

Dit geeft de volgende fout tijdens het compileren −

Output

Test.java:4:variable number might not have been initializedage = age + 7; ^1 error

Instance variabelen

  • Instance variabelen worden gedeclareerd in een klasse, maar buiten een methode, constructor of een blok.

  • wanneer een spatie is toegewezen voor een object in de hoop, wordt voor elke instantie een variabele waarde gecreëerd.

  • instantievariabelen worden aangemaakt wanneer een object wordt aangemaakt met het sleutelwoord ‘nieuw’ en vernietigd wanneer het object wordt vernietigd.

  • instantievariabelen bevatten waarden waarnaar moet worden verwezen door meer dan één methode, constructor of blok, of essentiële delen van de status van een object die in de hele klasse aanwezig moeten zijn.

  • instantievariabelen kunnen voor of na gebruik gedeclareerd worden op klasse niveau.

  • Access modifiers kunnen bijvoorbeeld variabelen worden gegeven.

  • de instantievariabelen zijn zichtbaar voor alle methoden, constructeurs en blokken in de klasse. Normaal gesproken wordt het aanbevolen om deze variabelen privé te maken (toegangsniveau). Echter, zichtbaarheid voor subklassen kan worden gegeven voor deze variabelen met behulp van access modifiers.

  • instantievariabelen hebben standaardwaarden. Voor getallen is de standaardwaarde 0, voor Booleans is het onwaar en voor objectverwijzingen is het null. Waarden kunnen worden toegekend tijdens de declaratie of binnen de constructor.

  • instantievariabelen kunnen direct benaderd worden door de naam van de variabele binnen de klasse aan te roepen. Echter, binnen statische methoden (wanneer instance variabelen worden gegeven toegankelijkheid), moeten ze worden aangeroepen met behulp van de volledig gekwalificeerde naam. ObjectReference.Variablenaam.

voorbeeld

import java.io.*;public class Employee { // this instance variable is visible for any child class. public String name; // salary variable is visible in Employee class only. private double salary; // The name variable is assigned in the constructor. public Employee (String empName) { name = empName; } // The salary variable is assigned a value. public void setSalary(double empSal) { salary = empSal; } // This method prints the employee details. public void printEmp() { System.out.println("name : " + name ); System.out.println("salary :" + salary); } public static void main(String args) { Employee empOne = new Employee("Ransika"); empOne.setSalary(1000); empOne.printEmp(); }}

Dit zal het volgende resultaat opleveren −

Output

name : Ransikasalary :1000.0

Klasse/statische variabelen

  • Klassenvariabelen ook bekend als statische variabelen worden gedeclareerd met het statische sleutelwoord in een klasse, maar buiten een methode, constructeur of een blok.

  • Er zou slechts één kopie van elke klasse variabele per klasse, ongeacht het aantal objecten worden gemaakt van het.

  • statische variabelen worden zelden anders gebruikt dan gedeclareerd als constanten. Constanten zijn variabelen die worden gedeclareerd als publiek / privaat, definitief en statisch. Constante variabelen veranderen nooit van hun oorspronkelijke waarde.

  • statische variabelen worden opgeslagen in het statische geheugen. Het is zeldzaam om andere statische variabelen te gebruiken dan definitief verklaard en gebruikt als publieke of private constanten.

  • statische variabelen worden aangemaakt wanneer het programma start en vernietigd wanneer het programma stopt.

  • zichtbaarheid is vergelijkbaar met instantievariabelen. De meeste statische variabelen worden echter openbaar verklaard omdat ze beschikbaar moeten zijn voor gebruikers van de klasse.

  • standaardwaarden zijn hetzelfde als instantievariabelen. Voor getallen is de standaardwaarde 0; voor Booleans is het false; En voor objectverwijzingen is het null. Waarden kunnen worden toegekend tijdens de declaratie of binnen de constructor. Bovendien kunnen waarden worden toegewezen in speciale statische initializer blokken.

  • statische variabelen kunnen benaderd worden door met de klassenaam ClassName aan te roepen.Variablenaam.

  • bij het declareren van klassevariabelen als openbaar statisch definitief, dan zijn variabelnamen (constanten)allemaal in hoofdletters. Als de statische variabelen niet openbaar en definitief zijn, is de naamgeving syntaxis hetzelfde als instantie en lokale variabelen.

voorbeeld

import java.io.*;public class Employee { // salary variable is a private static variable private static double salary; // DEPARTMENT is a constant public static final String DEPARTMENT = "Development "; public static void main(String args) { salary = 1000; System.out.println(DEPARTMENT + "average salary:" + salary); }}

Dit zal het volgende resultaat opleveren −

Output

Development average salary:1000

Opmerking − Als de variabelen worden benaderd vanuit een klasse buiten, moet de constante worden benaderd als werknemer.Afdeling

wat volgt?

u hebt al toegangsmodifiers gebruikt (public & privé) in dit hoofdstuk. In het volgende hoofdstuk zullen Access Modifiers en Non-Access Modifiers in detail worden uitgelegd.

advertenties

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.