Latest web development tutorials

Java typy zmiennych

W języku Java, wszystkie zmienne muszą być zadeklarowane przed użyciem. Podstawowa składnia deklaracji zmiennej w następujący sposób:

type identifier [ = value][, identifier [= value] ...] ;

Format Opis: rodzaj typów danych Java. Identyfikator jest nazwą zmiennej. Można użyć przecinków zadeklarować kilka zmiennych tego samego typu.

Oto kilka przykładów deklaracji zmiennych. Zauważ, że niektóre zawierają proces inicjalizacji.

int a, b, c;         // 声明三个int型整数:a、 b、c
int d = 3, e, f = 5; // 声明三个整数并赋予初值
byte z = 22;         // 声明并初始化 z
String s = "w3big";  // 声明并初始化字符串 s
double pi = 3.14159; // 声明了双精度浮点型变量 pi
char x = 'x';        // 声明变量 x 的值是字符 'x'。

Język Java obsługuje typy zmiennych są:

  • zmienne lokalne
  • zmienna Użytkownik
  • zmienne klasy

Java zmienne lokalne

  • Zmienne lokalne zadeklarowane w metodzie, konstruktora lub oświadczenie bloków;
  • Zmienne lokalne gdy metoda, konstruktora lub bloku instrukcji do wykonania, aby tworzyć, gdy są one wykonywane, zmienna zostanie zniszczony;
  • Modyfikator dostępu nie może być stosowane do lokalnych zmiennych;
  • Zmienne lokalne zadeklarowane tylko w jego metod, konstruktorów czy bloków rachunku widoczne;
  • Zmienne lokalne są alokowane na stosie.
  • Zmienne lokalne nie posiadają wartość domyślną, więc zmienna lokalna jest zadeklarowana, musi być zainicjowany zanim będą mogły być wykorzystane.

Przykład 1

W poniższych przykładach, wiek jest lokalna zmienna. Zdefiniowanego sposobu pupAge (), jego zakres będzie ograniczony do tej metody.

package com.w3big.test;

public class Test{ 
   public void pupAge(){
      int age = 0;
      age = age + 7;
      System.out.println("小狗的年龄是: " + age);
   }
   
   public static void main(String args[]){
      Test test = new Test();
      test.pupAge();
   }
}

Powyższe przykłady zebrane wyniki przedstawiają się następująco:

小狗的年龄是: 7

Przykład 2

W poniższym przykładzie zmiennej wiekowej nie jest zainicjowany, więc podczas kompilacji błędu czasowym:

public class Test{ 
   public void pupAge(){
      int age;
      age = age + 7;
      System.out.println("小狗的年龄是 : " + age);
   }
   
   public static void main(String args[]){
      Test test = new Test();
      test.pupAge();
   }
}

Powyższe przykłady zebrane wyniki przedstawiają się następująco:

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

zmienne instancji

  • Zmienne instancji zadeklarowana w klasie, ale w sposobie metod budowlanych i oświadczeń poza blokiem;
  • Gdy obiekt jest tworzony, wartość każdej zmiennej instancji jest określana do naśladowania;
  • W zmienna instancji jest tworzona, gdy obiekt jest tworzony, gdy obiekt jest niszczony zniszczenia;
  • Wartość zmiennej instancji powinien wynosić co najmniej metoda odniesienia konstruktora lub blok instrukcji, dlatego że zewnętrzne zmienne instancji można uzyskać informacje za pośrednictwem tych środków;
  • Zmienne instancji mogą być zadeklarowane przed użyciem lub po użyciu;
  • modyfikator dostępu można modyfikować zmienne instancji;
  • Na przykład metody zmiennej klasy, konstruktora lub bloku oświadczenie to jest widoczne. W normalnych okolicznościach powinny być prywatne zmienne instancji. Dzięki zastosowaniu modyfikatorów dostępu może mieć zmienne instancji widocznych do podklasy;
  • Zmienne instancji mają wartości domyślnych. Domyślna wartość zmiennej numerycznej jest 0, domyślna wartość zmiennej logicznej jest fałsz, domyślna wartość zmiennej typu odniesienia jest null. Wartość zmiennej może być określony w momencie zgłoszenia, może być również podany w konstruktora;
  • Zmienne instancji mogą być bezpośrednio dostępne dla nazwy zmiennej. Jednakże, metody statyczne w innych klasach, należy użyć nazwy pełną: ObejectReference.VariableName.

Przykład:

import java.io.*;
public class Employee{
   // 这个成员变量对子类可见
   public String name;
   // 私有变量,仅在该类可见
   private double salary;
   //在构造器中对name赋值
   public Employee (String empName){
      name = empName;
   }
   //设定salary的值
   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();
   }
}

Powyższe przykłady zebrane wyniki przedstawiają się następująco:

name  : Ransika
salary :1000.0

Zmienne klasy (zmienne statyczne)

  • Zmienne klasy, znane również jako zmienną statyczną w klasie zadeklarować słowa kluczowego static, ale na zewnątrz musi być w procesie metody budowy i bloku.
  • Czy klasa tworzy kilka obiektów, klasy mają tylko jedną kopię zmiennej klasy.
  • W uzupełnieniu do zmiennej statycznej jest zadeklarowana jako stałe rzadko stosowane. Stałe są zadeklarowane jako zmienne typu publicznego / prywatnego, końcowego i statycznego. Po inicjalizacji stałych nie może być zmieniony.
  • statycznych zmiennych są zapisywane w pamięci statycznej. Często jest zadeklarowana jako stała, rzadko stosowany samodzielnie statyczne deklaracje zmiennych.
  • Zmienne statyczne, gdy program zaczyna tworzyć zniszczyć na koniec programu.
  • I zmienne instancji mają podobną widoczność. Ale użytkownik klasy można zauważyć, większość zmiennej typu statycznego jest zadeklarowana jako publiczna.
  • Domyślny i zmienne instancji podobne. zmienna numeryczna Domyślną wartością jest 0, domyślna wartość logiczna jest fałszywy, należy wpisać numer referencyjny wartością domyślną jest null. Wartość zmiennej może być określony w momencie deklaracji, która zostanie określona w konstruktorze. Ponadto zmienne statyczne mogą być inicjowane w statycznych bloków oświadczenie.
  • Zmienne statyczne mogą być: ClassName.VariableName dostępu.
  • Zmienna klasa jest zadeklarowana jako public static ostatecznego typu, klasy nazwy zmiennej należy użyć wielkich liter. Jeśli zmienna statyczna nie jest publiczny i ostatni typ, spójne nazewnictwo i nazywania jej zmienne instancji i zmienne lokalne.

Przykład:

import java.io.*;
public class Employee {
    //salary是静态的私有变量
    private static double salary;
    // DEPARTMENT是一个常量
    public static final String DEPARTMENT = "开发人员";
    public static void main(String args[]){
    salary = 10000;
        System.out.println(DEPARTMENT+"平均工资:"+salary);
    }
}

Powyższe przykłady zebrane wyniki przedstawiają się następująco:

开发人员平均工资:10000.0

Uwaga: Jeśli chcesz uzyskać dostęp do innych rodzajów tej zmiennej, można uzyskać: Employee.DEPARTMENT.

W tym rozdziale nauczymy Java typy zmiennych, następnym rozdziale będziemy wprowadzać użycia modyfikatorów Java.