Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java Variabele Typen: Uitgebreide Gids

Een variabele biedt naamgegeven opslag die ons programma kan manipuleren. Elke variabele in Java heeft een specifiek type dat de grootte en layout van het geheugen bepaalt, het bereik van waarden, en de operaties die toegepast kunnen worden.

Alle variabelen moeten gedeclareerd zijn voordat ze gebruikt mogen worden. Basis vorm:

dataType variable [ = value][, variable [ = value] ...] ;

Geldige voorbeelden:

int a, b, c;           // Drie ints
int a = 10, b = 10;    // Initialisatie
byte B = 22;           // Byte initialisatie
double pi = 3.14159;   // PI waarde
char a = 'a';          // Char initialisatie

Drie soorten variabelen in Java:

  • Lokale variabelen
  • Instance variabelen
  • Class/Static variabelen

Lokale Variabelen

  • Gedeclareerd in methodes, constructors of blokken.
  • Gemaakt bij binnenkomst, vernietigd bij verlaten van methode/constructor/blok.
  • Geen access modifiers mogelijk.
  • Alleen zichtbaar binnen gedeclareerde methode/constructor/blok.
  • Geïmplementeerd op stack niveau.
  • Geen default waarde; moeten geïnitialiseerd zijn vóór eerste gebruik.

Voorbeeld

age is lokaal, gedefinieerd in pupAge(), scope beperkt tot 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();
  }
}

Output

Puppy age is: 7

Fout Voorbeeld

age zonder initialisatie geeft compileerfout:

public class Test {
  public void pupAge() {
    int age;
    age = age + 7;  // FOUT: niet geïnitialiseerd
    System.out.println("Puppy age is : " + age);
  }
  public static void main(String args[]) {
    Test test = new Test();
    test.pupAge();
  }
}

Foutmelding

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

Instance Variabelen

  • Gedeclareerd in class, buiten methode/constructor/blok.
  • Bij object allocatie in heap: slot voor elke instance variabele.
  • Gemaakt bij object creatie met new, vernietigd bij object vernietiging.
  • Behouden waarden die door meerdere methodes/constructors/blokken referencd worden, of essentiële state van object.
  • Kunnen in class level voor of na gebruik gedeclareerd worden.
  • Access modifiers mogelijk.
  • Zichtbaar voor alle methodes/constructors/blokken in class. Aanbevolen private, maar subclasses zichtbaar via modifiers.
  • Default waarden: getallen 0, Booleans false, object referenties null. Toewijzing bij declaratie of in constructor.
  • Direct benaderbaar via variabelenaam in class. In static methods met ObjectReference.VariableName.

Voorbeeld

import java.io.*;
public class Employee {
  public String name;
  private double salary;
  public Employee(String empName) { name = empName; }
  public void setSalary(double empSal) { salary = empSal; }
  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();
  }
}

Output

name : Ransika salary :1000.0

Class/Static Variabelen

  • Gedeclareerd met static in class, buiten methode/constructor/blok.
  • Slechts één kopie per class, ongeacht aantal objecten.
  • Zelden gebruikt behalve als constanten (public/private, final, static). Constanten veranderen nooit.
  • Opgeslagen in static memory.
  • Gemaakt bij programstart, vernietigd bij programstop.
  • Zichtbaarheid als instance variabelen, maar meestal public voor beschikbaarheid.
  • Default waarden als instance variabelen. Toewijzing bij declaratie, in constructor, of in static initializer blokken.
  • Benaderbaar via ClassName.VariableName.
  • public static final constanten: namen in HOOFDLETTERS. Anders naming als instance/lokale variabelen.

Voorbeeld

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

Output

Development average salary:1000

Let op – Vanuit buitenstaande class: constant als Employee.DEPARTMENT benaderen.

Wat Volgt?

Volgende hoofdstuk: Access Modifiers en Non-Access Modifiers in detail.

Java

  1. C# Variabelen & Primitive Datatypes onder de knie krijgen: Complete gids
  2. C Variabelen, Constanten en Literals: Een Complete Gids
  3. C-opslagklassen begrijpen: Bereik, levensduur en prestaties
  4. C++ Variabelen en Datatypes: Expert‑handleiding voor int, double, char, string, bool
  5. Java-variabelen en literals: een uitgebreide gids
  6. Java primitieve datatypes: complete gids met voorbeelden
  7. Java-operators beheersen: typen, syntax en praktische voorbeelden
  8. Java interfaces meesteren: concepten, implementatie en best practices
  9. Java Try-with-resources meesteren: automatische resource management uitgelegd
  10. Java Annotaties uitgelegd: typen, plaatsing en praktische voorbeelden
  11. Java Annotatie typen: uitgebreide gids over voorgedefinieerde, aangepaste en meta annotaties