Променливи в Java - Видове и инициализация - Декларация за невалидни

Съдържание:

Anonim

Какво е Java променливи?

Променливите са основните единици, използвани за съхраняване на всякаква информация в Java. Името на променливата е името, отредено за тези единици. Java код може да се нуждае от информация под формата на числова или низ. Може да се изисква един и същ набор от стойности на няколко етапа на код. Това е мястото, където променлива влиза в картината.

Всички тези необходими стойности могат да бъдат присвоени на различни променливи, които ще се съхраняват в съответните им места в паметта, следователно променливата не е нищо друго освен името на място в паметта. Съхраняването на стойности на променливи е по-ефективно от повторението на стойностите навсякъде в кода. Също така, тя помага, когато има промяна в необходимата стойност, тъй като само промяната й на едно място от декларацията на променлива ще бъде достатъчна, вместо да се налага да се променя на няколко места.

Декларация на променливи

Променлива не може да се използва, докато и ако не бъде декларирана, а типът данни, който присвояваме по време на деклариране, определя типа на стойността, която може да държи. Различни типове данни като int, float, string, char, Boolean, long, double могат да бъдат присвоени на променлива. Общият синтаксис за деклариране на променлива в Java е следният:

Например: int a = 1;

където;

int -> тип данни

a -> име на променлива

1 -> променлива стойност

Следващата диаграма дава изобразителното представяне на същото:

Инициализация на променливи

Присвояването на променлива по подразбиране се нарича инициализация на тази променлива. Променлива може да се инициализира както по време на деклариране, така и на по-късните етапи на програмата според изискванията.

Примери:

Следват някои от стойностите, които можем да зададем на променлива по отношение на нейния конкретен тип данни

1) int i; I = 10;

2) град на струните; град = "Бангалор";

3) char a; а = "H";

4) плаващ dec; декември = 3.5;

5) Булева вал; Val = вярно;

Видове променливи

В Java има 3 типа променливи:

  1. Локална променлива
  2. Променлива за инстанция
  3. Статична променлива

1) Локални променливи

  • Това са променливи, декларирани вътре в определен метод или блок или конструктор, в който се намират.
  • Тяхната променлива стойност, която се съхранява по време на деклариране, е валидна само в обхвата на този метод и се губи при излизане на метода.
  • Локална променлива с едно и също име на променлива може да бъде декларирана в множество методи или блокове без никакъв конфликт.

Пример:

а) В следващия пример ние разглеждаме „число“ и „име“ като локални променливи

public class PatientDetails(
public void Patient()
(
// local variable num
//local variable name
int num = 1200;
string name = "Harish";
id = id + 1;
System.out.println("Patient Name is: " + name + " Patient Number is: " + num);
name = "Sudha";
System.out.println("Patient Name is: " + name + " Patient Number is: " + num);
)
public void DoctorDetails()
(
int num = 12000;
string name = "Vijay";
num = num +1;
System.out.println("Doctor Name is: " + name + " Doctor ID is: " + num);
name = "Suma";
System.out.println("Doctor Name is: " + name + " Doctor ID is: " + num);
)
public static void main(String args())
(
PatientDetails pat = new PatientDetails();
pat. Patient();
pat.DoctorDetails();
)
)

изход:

Името на пациента е: Хариш
Номер на пациента е: 1200
Името на пациента е: Sudha
Номер на пациента е: 1201
Името на доктора е: Виджай
Лекарският номер е: 12000
Името на доктора е: Сума
Докторски номер е: 12001

Това показва, че едни и същи имена на променливи променливи „число“ и „име“, когато са декларирани в два различни метода, т.е. Patient и DoctorDetails, могат да бъдат използвани за задаване на произволен брой различни стойности.

Пример:

б) Едни и същи локални променливи „число“ и „име“ ще бъдат невалидни, ако се опитаме да покажем стойността им извън техния метод

public class PatientDetails(
public void Patient()
(
// local variable num
//local variable name
int id = 1200;
)
public static void main(String args())
(
System.out.println("Patient Number is: " + num);
//printing local variable outside it's method
)
)

изход:

Грешка при компилация в java код: -
prog.java:12: грешка: не може да се намери символ
System.out.println („Номер на пациента е:“ + брой);
^
символ: променлив номер
местоположение: клас PatientDetails
1 грешка

2) инстанционни променливи

  • Променливите на инстанцията са тези, които са декларирани в клас, а не в който и да е метод.
  • Те са създадени, когато обектът е създаден и тяхната стойност се губи при унищожаването на обекта.
  • Инициализацията на тези променливи не е задължителна и по подразбиране стойността се приема като нула.
  • Те са нестатични променливи, което означава, че паметта за променливата ще бъде разпределена, когато се създаде нов обект.

Пример:

Тук a, b, c са променливите инстанции, които се декларират в два различни екземпляра от два различни обекта.

import java.io.*;
class Marks (
// a, b, c are instance variables
// a, b, c variables are being declared inside a class and not function
int a;
int b;
int c;
)
class MarksDemo (
public static void main(String args())
(
// first object declaration
Alpha alp1 = new Alpha();
alp1 .a= 44;
alp1 .b= 77;
alp1 .c= 88;
// second object declaration
Alpha alp2 = new Alpha();
alp2 .a= 77;
alp2 .b= 55;
alp2 .c= 74;
// displaying variable values for first object
System.out.println("Values for first object:");
System.out.println(alp1.a);
System.out.println(alp1.b);
System.out.println(alp1.c);
// displaying variable values for second object
System.out.println("Values for second object:");
System.out.println(alp2.a);
System.out.println(alp2.b);
System.out.println(alp2.c);
)
)

изход:

Стойности за първия обект:
44
77
88
Стойности за втория обект:
77
55
74

3) Статични променливи

  • Статичните променливи се декларират в началото на програмата, предшествани от статичната ключова дума.
  • Подобно на променливи инстанции, инициализацията на статични променливи не е задължителна и стойността им по подразбиране е 0.
  • Може да има само едно статично име на променлива, което ще бъде създадено при стартиране на програмата и загубено, когато изпълнението приключи.
  • Паметта за тези променливи се разпределя само веднъж в момента на зареждане на класа и може да бъде споделена от множество обекти.
  • Когато обектите са различни, промените, направени в стойността на статичната променлива в един от обектите, ще бъдат отразени във всички за разлика от променливи инстанции, където стойностите, декларирани в един обект, няма да бъдат отразени в други.

Пример:

import java.io.*;
class Students (
//static variable rollno
public static double rollno;
public static String name = "Lilly";
public static classnum;
)
public class StudentDetails (
public static void main(String args())
)
(
// no need of object to access static variables
Students .rollno= 101;
Students.classnum=3;
System.out.println(Students .name + "'s rollno is:" + Students .rollno + "and class number is:" + Students.classnum);
)
)

изход:

Ролиното на Лили е: 101, а номерът на класа е: 3

Заключение - Променливи в Java

Променливите образуват елементарната част в Java програма. Те сочат към определено място в паметта, когато са създадени и същото се освобождава, когато обектът вече не е посочен. Тази памет, която се освобождава, ще бъде премахната, когато се извършва събирането на боклука. Този процес може да се разглежда и като жизнен цикъл на променлива.

Препоръчителни статии

Това е ръководство за променливи в Java. Тук обсъждаме типовете заедно с инициализация и деклариране на променливи. Можете също да разгледате следните статии, за да научите повече -

  1. Докато Loop в Java
  2. Звездни модели в Java
  3. Най-добър Java IDE
  4. Най-добрите компилатори на Java
  5. Как да инициализираме променливи в C #?
  6. Променливи в JavaScript
  7. Статична ключова дума в С