KodeGym/Blog Jawa/Acak/Variabel Jawa
John Squirrels
tingkat
San Francisco

Variabel Jawa

Diterbitake ing grup
Ing artikel iki, kita bakal nerangake marang kabeh siswa Jawa apa iku variabel Jawa lan cara nggarap.

Apa variabel Jawa

Variabel ing Jawa bisa dianggep minangka kothak. "Kothak" iki nduweni ukuran tartamtu: memori sing diparengake. Pinten memori bakal diparengake gumantung ing jinis variabel, nanging kita bakal ngomong babagan iki mengko. Ing wektu sing padha, ukuran kothak dhewe ora bisa diganti sawise nggawe, nanging isi bisa. Kothak bisa kosong. Sampeyan bisa "masang" sawetara nilai menyang, banjur extract lan sijine sawetara nilai liyane. Dadi, variabel minangka lapangan sing nyimpen nilai data sajrone eksekusi program Java. Kothak iki nduweni fitur penting:
  • bisa tansah ngemot siji nilai (utawa bisa kosong, ing kasus iki bakal ngemot nilai standar),
  • Wis jinis data. Ukurane gumantung saka jinis data, uga ing area memori tartamtu sing disedhiyakake kanggo papan kasebut (ing ngendi ana).
Variabel ing Jawa - 1

Cara ngumumake variabel

Kanggo ngumumake variabel ing Jawa, sampeyan kudu nemtokake jinis lan jenenge. Iki minangka conto nyatakake telung variabel:
int myInt;
String s;
Object variableName;
Ing kene int , String , lan Object minangka jinis data lan myInt , s , variableName minangka jeneng variabel. Jinis data kudu dipilih adhedhasar kabutuhan program, lan luwih becik milih jeneng supaya jelas babagan apa. Mesthine, kanggo pamula ora ketat, nanging ing proyek gedhe, jeneng variabel kaya 's' bisa ngrusak keterbacaan kode kasebut. Dadi luwih apik yen sampeyan wis biasa menehi jeneng variabel kanthi cara sing jelas saka wiwitan. Ing alesan, mesthi.

Cara miwiti variabel

Nalika sampeyan ngumumake variabel, sampeyan nemtokake memori kasebut. Initialization tegese sampeyan "nglebokake" nilai tartamtu menyang "kothak". Iki bisa ditindakake langsung sajrone deklarasi variabel utawa mengko. Uga, nilai variabel bisa diganti sajrone eksekusi program. Tuladha:
public class VariableTest {
    public static void main(String[] args) {
        int myInt = 5;
        String s;
        s = "init";
        System.out.println(s);
        s = s+5;
        System.out.println(s);
    }
}
Kene kita ngumumaké lan initialized variabel myInt ing siji baris, langsung allocating memori kanggo (32 bit kanggo saben nomer int), menehi jeneng, lan banjur diselehake ing Nilai 5 ing memori diparengake. Banjur kita ngumumake yen kita nyedhiakke papan memori kanggo senar s , lan wis printah kapisah sijine nilai "init" menyang. Sawisé iku, kita nyithak senar lan ngganti nilai variabel s . Ing program iki, kita nyithak garis, lan yen sampeyan mbukak, sampeyan bakal weruh asil ing ngisor iki:
iki init5

Jinis data variabel ing basa Jawa: primitif lan non-primitif

Jinis data variabel ing Jawa dipérang dadi rong klompok:
  • Jinis data primitif kalebu byte , short , int , long , float , double , boolean , lan char
  • Tipe data non-primitif kayata String , Arrays , lan Classes
Mangkene conto nggarap variabel:
public class VariableTest {
   public static void main(String[] args) {

       int myInt = - 5;               // integer (whole number)
       float myFloat = 2.718281828459045f;    // Floating point number
       char myLetter = 'a';         // character
       boolean myBool = true;       // boolean
       String myText = "Hero";     // String
       System.out.println(myInt + " " +
               myFloat +" " + myLetter + " " +  myBool + " " + myText);
       Student myStudent = new Student("Walker","Johnny", "Kyle", null);

   }
}
int , char , boolean , lan float minangka primitif. String ora primitif. Kepiye babagan variabel myStudent ? Iki minangka obyek saka kelas sing digawe pangguna Student . Iki digawe mung kanggo nggambarake karya karo variabel non-primitif. Dheweke mayoritas ing Jawa, amarga meh kabeh ing basa pamrograman iki minangka obyek. Kanggo mangerteni, iki kode kelas Siswa :
import java.util.Date;

public class Student {
   String surname;
   String name;
   String secondName;
   Long birthday; // Long instead of long is used by Gson/Jackson json parsers and various orm databases

   public Student(String surname, String name, String secondName, Date birthday ){
       this.surname = surname;
       this.name = name;
       this.secondName = secondName;
       this.birthday = birthday == null ? 0 : birthday.getTime();
   }

   @Override
   public int hashCode(){
       //TODO: check for nulls
       //return surname.hashCode() ^ name.hashCode() ^ secondName.hashCode() ^ (birthday.hashCode());
       return (surname + name + secondName + birthday).hashCode();
   }
   @Override
   public boolean equals(Object other_) {
       Student other = (Student)other_;
       return (surname == null || surname.equals(other.surname) )
               && (name == null || name.equals(other.name))
               && (secondName == null || secondName.equals(other.secondName))
               && (birthday == null || birthday.equals(other.birthday));
   }
}

Jinis variabel ing Jawa: lokal, conto, lan statis

Ana telung jinis variabel ing Jawa, kita wis kadhaptar minangka nderek:
  1. Variabel Lokal
  2. Variabel Instance
  3. Variabel statis

Variabel Lokal

Variabel sing diumumake ing njero metode kasebut diarani variabel lokal. Uga, variabel lokal diumumake ing njero konstruktor lan blok. Sampeyan bisa nggunakake variabel lokal mung ing metode, konstruktor, utawa blok sing digawe lan metode liyane ing kelas kasebut ora ngerti manawa variabel kasebut ana. Dadi variabel lokal digawe nalika metode, konstruktor, utawa blok dilebokake lan variabel kasebut dirusak yen metode, konstruktor, utawa blok ora bisa digunakake. Variabel lokal ora bisa ditetepake nganggo tembung kunci statis . Luwih maneh: sampeyan ora bisa nggunakake modifikasi akses kanggo variabel lokal. Punika conto:
public class VariableTest {
   public static void main(String[] args) {
       System.out.println(myMethod("C plus "));
   }
           private static String myMethod(String myString) {
       String myOtherString = "plus";
       return myString + myOtherString;
   }
}
Ing kene myOtherString minangka variabel lokal. Sampeyan ora bisa nggunakake saka cara liyane, nanging myMethod . Variabel lokal ora bisa duwe nilai standar. Yen paling ora siji variabel lokal ora diwiwiti ing program kasebut, program kasebut ora bakal bisa digunakake kanthi bener. Ayo gawe owah-owahan cilik ing salah sawijining conto sadurunge lan "lali" kanggo miwiti variabel myBool :
public class VariableTest {
   public static void main(String[] args) {

       int myInt = - 5;               // integer (whole number)
       float myFloat = 2.718281828459045f;    // Floating point
       char myLetter = 'a';         // character
       boolean myBool;       // boolean
       String myText = "Hero";     // String
       System.out.println(myInt + " " +
               myFloat +" " + myLetter + " " +  myBool + " " + myText);
       Student myStudent = new Student("Walker","Johnny", "Kyle", null);

   }
}
Yen kita nyoba mbukak program kasebut, bakal ana kesalahan:
Kesalahan: (10, 50) java: variabel myBool bisa uga ora diwiwiti

Variabel Instance

Variabel sing diumumake ing njero kelas nanging ing njaba awak metode apa wae, konstruktor utawa blok diarani variabel instance. Variabel conto digawe nalika obyek digawe nggunakake tembung kunci anyar . Iku numpes nalika obyek wis numpes. Ora bisa diumumake minangka statis, nanging sampeyan bisa nggunakake modifikasi akses kanggo variabel conto. Variabel Instance katon kanggo kabeh metode, konstruktor lan blok ing kelas. Biasane variabel conto iku pribadi, nanging sampeyan bisa ngganti visibilitas kanggo subclass. Variabel conto minangka lawan variabel lokal duwe nilai standar. Kanggo kabeh jinis primitif nomer nilai standar 0, kanggo booleans iku palsu, lan kanggo referensi obyek iku null. Nilai bisa ditugasake sajrone deklarasi utawa ing konstruktor. Punika conto:
//instance variable example
public class Employee {

   // here we have a public instance variable. It is visible for this class and child classes
   public String name;

   //this instance variable is private so it’s visible for the Employee class only. You can use setters and getters to get it
   private double salary;

   public Employee (String empName) {
       name = empName;
   }

   public String getName() {
       return name;
   }

   public void setName(String name) {
       this.name = name;
   }

   public double getSalary() {
       return salary;
   }

   public void setSalary(double employeeSalary) {
       salary = employeeSalary;
   }

   public static void main(String args[]) {
       Employee employee = new Employee("Johnny");
       employee.setSalary(1500);
       System.out.println("name = " + employee.getName());
       System.out.println("salary = " + employee.getSalary());
   }
}

Variabel statis

Variabel sing diarani statis diarani variabel statis. Java nawakake sampeyan ngumumake variabel kasebut ing njaba metode, konstruktor utawa blok. Iku ora bisa lokal, padha kagungane kelas, ora kanggo kedadean. Tegese salinan siji saka variabel statis sapisan digawe lan dituduhake ing antarane kabeh kedadeyan kelas. Alokasi memori kanggo variabel statis kedadeyan mung sapisan nalika kelas dimuat ing memori. Dheweke bisa duwe visibilitas, nanging biasane diumumake minangka umum. Dheweke uga duwe nilai standar kayata variabel conto.
public class Box
{
   public void add(int data)
   {
       Storage.sum = Storage.sum + data;
       Storage.count++;
   }

   public void remove(int data)
   {
       Storage.sum = Storage.sum - data;
       Storage.count--;
   }
}

public class Storage
{
   public static int count = 0;
   public static int sum = 0;
}
Ing conto ing ndhuwur, kita nggawe kelas Storage kapisah , dipindhah count lan jumlah variabel menyang, lan ngumumaké statis. Variabel statis umum bisa diakses saka metode program apa wae (lan ora mung saka metode). Kanggo nguatake apa sing sampeyan sinau, disaranake sampeyan nonton video pelajaran saka Kursus Jawa
Komentar
  • Popular
  • Anyar
  • lawas
Sampeyan kudu mlebu kanggo ninggalake komentar
Kaca iki durung duwe komentar