Różnica między zmienną, a polem.

0

Wcześniej czytałem że wartości w java zapisuje się w zmiennych. Teraz doszedłem do rozdziału o obiektach i jest informacja że to nie zmienne a pola służą do przechowywania danych.

Jaką jest różnica między zmienną a polem?

2

"Pole" jest cały czas zmienną, tylko taką, która jest częścią danej klasy.

1
The Java® Language Specification, 4.12 napisał(a)

A variable is a storage location and has an associated type, sometimes called its compile-time type, that is either a primitive type (§4.2) or a reference type (§4.3).
Pod tę definicję podpada zarówno zmienna lokalna, jak i pole klasy, zatem formalnie pola też są zmiennymi.
Przyjęło się natomiast mówić zmienna w węższym rozumieniu zmienna lokalna, czyli taka zdefiniowana wewnątrz metody, w porównaniu do pola, które jest zdefiniowane i widoczne w całej klasie.

Na przykładzie:

import java.util.*;
import java.lang.*;
import java.io.*;

class WitajSwiecie {
	
	int toJestPole;
	
	public static void main (String[] args) throws java.lang.Exception {
		int toJestZmiennaLokalna;
	}
}
0

Dziękuję za pomoc

1 użytkowników online, w tym zalogowanych: 0, gości: 1