1. Woordenlijst
Zoals in elke programmeertaal, heeft Java woorden met een speciale betekenis. Bijvoorbeeld, return
of if
of while
. Deze woorden worden trefwoorden ( trefwoorden ) genoemd en worden door de Java-taal als gereserveerd beschouwd.
U kunt deze woorden niet gebruiken als variabelenaam, methodenaam of klassenaam. De compiler zal ze altijd op een strikt gedefinieerde manier interpreteren. Er zijn 54
zulke woorden op Java.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Je kent er al een paar, en we zullen het nu over de rest hebben.
2. Primitieve typen
Zoals u zich waarschijnlijk herinnert, heeft Java 8 primitieve typen, en elk daarvan heeft zijn eigen trefwoord:
byte
short
int
long
char
float
double
boolean
void
Als je voldoende nieuwsgierig bent, is de kans groot dat je al hebt geprobeerd een variabele int een naam te geven. En dat is je natuurlijk niet gelukt. Dit komt precies omdat de namen van alle primitieve typen gereserveerde woorden zijn.
Ook het void
type valt in deze categorie.
3. Lussen en takken
Lussen en takken geven ons ook een vrij lange lijst met trefwoorden:
if
else
switch
case
default
while
do
for
break
continue
Slechts 10 woorden zijn voldoende om de taal verschillende soorten lussen, takken en besturingsinstructies te geven voor het onderbreken van lussen ( break
en continue
) en meerdere takken ( switch
). Al deze zoekwoorden ken je al.
4. Uitzonderingen
Uitzonderingen geven ons 5 zoekwoorden:
try
catch
finally
throw
throws
Deze maken allemaal deel uit van een try-catch-finally
blok. De operator voor het genereren van uitzonderingen is throw
en het throws
sleutelwoord ondersteunt het checked
uitzonderingsmechanisme.
Het goede nieuws is dat je al bekend bent met alle zoekwoorden die betrekking hebben op uitzonderingen, dus je bent ook al grotendeels bekend met het werken met uitzonderingen.
5. Zichtbaarheid
Hier zijn er slechts drie zoekwoorden en u kent ze al.
private
protected
public
public
geeft toegang tot een methode/variabele/klasse vanaf elke plek in het programma.
private
verbiedt dat een methode/variabele/klasse overal in het programma toegankelijk is. Toegang is alleen toegestaan binnen dezelfde klasse als een methode gemarkeerd met de private
modifier.
protected
werkt hetzelfde als private
, maar geeft ook toegang tot een methode/variabele/klasse van overgeërfde klassen. De voordelen van deze modifier zullen voor u duidelijker worden wanneer u vertrouwd raakt met OOP en overerving.
6. Werken met klassen
Er zijn 11 trefwoorden in deze categorie:
class
interface
enum
import
package
extends
implements
static
final
abstract
default
Ze zijn in te delen in 4 groepen.
De eerste groep heeft betrekking op het maken van klassen: class
, interface
en enum
. Je hebt al geleerd over het declareren van klassen en opsommingen . Het interface
sleutelwoord wordt gebruikt om nog een ander klasse-achtig type te declareren: interfaces.
De tweede groep bestaat uit de pakket- en importtrefwoorden , waarmee u al bekend bent. Het sleutelwoord package wordt gebruikt om het pakket van een klasse in een klassenbestand te specificeren. En import
zo kunnen we korte namen van externe klassen gebruiken bij het schrijven van onze eigen klassen.
De trefwoorden extends
en implements
worden gebruikt voor overerving. Je zult ze helemaal aan het begin van de Java Core-zoektocht bekijken.
Tot slot bestaat de laatste groep uit de static
, final
, default
, en abstract
modifiers. Je weet al een beetje over static
en final
. Het abstract
sleutelwoord wordt gebruikt om een klasse of methode abstract te maken. Je krijgt meer details als je overerving bestudeert in de Java Core-zoektocht.
7. Werken met objecten en variabelen
Er worden nog zes trefwoorden gebruikt bij het werken met objecten, methoden en variabelen.
new
instanceof
this
super
return
var
(sinds Java 10)
De new
operator wordt gebruikt om nieuwe objecten te maken - dat weet je al.
De instanceof
operator wordt gebruikt om te controleren of een variabele een verwijzing bevat naar een object van een bepaald type. Je bent er al bekend mee.
Het this
sleutelwoord wordt gebruikt om problemen op te lossen die ontstaan door het schaduwen van instantievariabelen en methoden. Je hebt dit ook bestudeerd.
Het super
sleutelwoord is analoog aan this
, maar het wordt gebruikt om te verwijzen naar de methoden en variabelen van de bovenliggende klasse. De ouderklasse wordt ook wel de superklasse genoemd.
De return
instructie wordt gebruikt om de waarde van een methode terug te geven, en ook om de uitvoering van een methode te beëindigen.
Ten slotte var
is voor het declareren van een variabele waarvan het type automatisch wordt afgeleid. Hiermee ben je al bekend.
8. Multithreading
Op het niveau van Java-syntaxis wordt multithreading weergegeven door slechts twee woorden.
synchronized
volatile
We zullen ze niet eens aanraken. Ga naar de Java Multithreading- zoektocht en dan duiken we erin.
9. Diversen
Er zijn nog 4 bijzondere zoekwoorden:
native
transient
assert
strictfp
native
is een modifier die vóór een methodedeclaratie kan worden geschreven. Het betekent dat de methodecode niet in Java is geschreven, maar in C++ en is ingebed in de Java-machine (nou ja, of een DLL). Zoals je waarschijnlijk al geraden hebt, is de Java-machine zelf ook in C++ geschreven. Net als veel van de standaard bibliotheekmethoden.
transient
is een modifier die vóór instantievariabelen (velden van een klasse) kan worden geschreven. Het vraagt de Java-machine om de gemarkeerde variabele over te slaan (of te negeren) tijdens het serialiseren van een object van de klasse. Je kunt meer leren over serialisatie in de Java Collections-quest.
assert
komt ook naar Java vanuit C++. Met zijn hulp kunt u extra controles aan uw code toevoegen (bijvoorbeeld om te controleren of een variabele null is). Het belangrijkste hier is dat deze controles worden in- of uitgeschakeld tijdens het compileren.
U kunt het project bouwen voor interne testen en deze controles worden uitgevoerd (inbegrepen in de build). Of u kunt ze tijdens het compileren uitschakelen om de versie van het programma te maken die aan gebruikers wordt geleverd.
Wat betreft het strictfp
sleutelwoord en de extra precisie van Intel-processors, we hebben een heel verhaal voor je .
10. Gereserveerd maar niet gebruikt
Er zijn ook twee trefwoorden die gereserveerd maar niet gebruikt worden.
const
goto
Deze zijn ook een erfenis van de C++-taal, waar ze bestaan en worden gebruikt.
11. Geen zoekwoorden
Formeel zijn de constanten true
, false
en null
geen trefwoorden. Dat gezegd hebbende, ze hebben elk hun eigenaardigheden. U kunt een methode true
of een variabele geen naam geven false
. De compiler zal dergelijke code niet begrijpen en zal deze niet compileren.
GO TO FULL VERSION