Brengt kennis samen
Klantenservice
  • Veelgestelde vragen
  • How to order
  • Contact
  • Bestelinformatie
  • Bestelprocedure
  • Retourneren
  • E-books
  • Online licentie
Inloggen
Winkelwagen
Winkelwagen
Korting
-
Verzendkosten
Gratis
Totaalprijs
€ 0,00
Naar winkelwagen
Gratis verzending binnen Nederland vanaf € 20,-
Op werkdagen voor 21.00 uur besteld, morgen in huis. Gratis verzending in NL vanaf € 20,-.
  • Webshop
    WebshopBuilt environmentCommunicatie, marketing en mediaCommunicatieve vaardighedenEconomie en managementEnglish booksEngineeringDigitaal
    DocentprofessionaliseringGezondheidszorgHBO ICTHogere sociale studiesOnderwijs en opvoedingOnderzoek en statistiekProjectmanagement
    Acties Alle uitgaven Zojuist verschenen Verwacht
  • Boom op maat
    • Boom op maat
    • Aanvragen
    • Veelgestelde vragen
  • Domein
    • Communicatie, marketing en media
    • Docentprofessionalisering
    • Economie, management en organisatie
    • HBO ICT
    • Onderwijs en opvoeding
    • Onderzoek en statistiek
    • Techniek
    • Vaardigheden
    • Zorg en welzijn
  • Uitgelicht
    • Boom Academie
    • Bouwstenen
    • Boom Docentacademie
    • Events en tutorials
    • Online boek en online licentie
    • TrainTool
    • Wiskunde voor technici
  • Docentenservice
    • Docentexemplaar aanvragen
    • Docentenservice leveringsvoorwaarden
    • Blended learning
    • Contact met onze accountmanagers
    • Docentendagen
  • Nieuws
  • Over ons
    • Boom hoger onderwijs
    • Het team
    • Vacatures
    • Samenwerken?
    • Nieuwsbrief
Aan de slag met Java en JavaFX (5e druk)
Terug
Delen
Facebook Twitter LinkedIn Mail Print Link
Link kopiëren

Aan de slag met Java en JavaFX (5e druk)

Objectgeoriënteerd ontwerpen en programmeren

Gertjan Laan | Boom uitgevers Amsterdam
Aan de slag met Java en JavaFX (5e druk)
5% Studentenkorting
Als student krijg je korting bij aankoop van 2 of meer verschillende voorgeschreven Nederlandstalige hbo/wo-studieboeken. Lees meer
Paperback incl. online licentie
April 2018 | ISBN 9789024415663 | 5e druk | 320 blz.
Levertijd 1-2 werkdagen
€ 58,50
In winkelwagen
Bookshelf e-book incl. online licentie 
April 2018 | ISBN 9789024424573 | 5e druk
Direct via e-mail
€ 58,50
In winkelwagen
Online licentie www.aandeslagmetjava.nl (2 jaar incl. online boek)
ISBN 3009010000106
Direct via e-mail
€ 46,95
In winkelwagen
www.aandeslagmetjava.nl
 
Bezoeken
Docentexemplaar aanvragen
Voor docenten en instellingen met een zakelijk account
 
Aanvragen
Inkijkexemplaar Plaats op wensenlijst
OmschrijvingInhoudAuteursExtra
Omschrijving

Aan de slag met Java en JavaFX maakt je wegwijs in de wereld van Java. Met de komst van Java 8 is JavaFX een geïntegreerd onderdeel van Java, wat het mogelijk maakt modern uitziende applicaties te maken. Het boek is bestemd voor beginnende Java-programmeurs, studenten die Java moeten leren en iedereen die wil weten wat een klasse, object, methode of interface is.

Java is een objectgeoriënteerde programmeertaal. Alle – vaak abstracte – concepten die daarbij horen worden vanaf het eerste hoofdstuk glashelder uitgelegd en aan de hand van zo’n 150 goedgekozen voorbeelden gedemonstreerd. Aan de slag met Java en JavaFX richt zich naast het programmeren van applicaties op de basisprincipes van objectgeoriënteerd ontwerpen en programmeren.

Dankzij de vele vragen en gevarieerde opgaven in het boek en de website www.aandeslagmetjava.nl (met directe feedback!) is Aan de slag met Java en JavaFX zeer geschikt als cursusmateriaal dat door studenten zelfstandig kan worden doorgewerkt.

Inhoud

Voorwoord 

 

1 Introductie

1.1 Inleiding

1.2 Achtergrond

1.3 En dan is er Java

1.4 Applicatie, applet en servlet

1.5 Hoe gaat het programmeren in zijn werk?

1.6 Wat heb je nodig?

1.7 De software installeren

1.7.1 NetBeans en JDK installeren

1.7.2 JDK en Eclipse installeren

1.8 Verschillende versies van Java

1.9 Bomen en JavaFX

 

2 Een JavaFX-applicatie maken

2.1 Inleiding

2.2 Een opstartklasse voor een JavaFX-applicatie

2.3 Oefeningen

2.3.1 NetBeans-oefeningen

2.3.2 Eclipse-oefeningen

2.3.3 Oefeningen voor beide IDE’s

2.4 Wat is een klasse?

2.4.1 Waaruit bestaat de opstartklasse?

2.4.2 De methode start() en de methode main()

2.4.3 De kop van de methode

2.4.4 De body van de methode

2.4.5 De klasse FXVb0201

2.4.6 Importeren van klassen uit een package

2.4.7 Commentaar 

2.5 Een gebruikersinterface

2.5.1 Een klasse voor de gebruikersinterface

2.5.2 Declaratie van referenties

2.5.3 Constructor

2.6 Samenwerking tussen klassen

2.6.1 Opstart- en gui-klasse in dezelfde package

2.7 Oefeningen

2.8 Event-afhandeling

2.8.1 Een event-handler

2.9 Twee knoppen en een tekstvak

2.10 Richtlijnen voor de opmaak van broncode

2.10.1 Witregels

2.11 Regels voor namen in Java

2.12 Handige hulp van NetBeans en Eclipse

2.13 Samenvatting

2.14 Oefeningen

 

3 Rekenen en tekenen

3.1 Inleiding

3.2 Variabelen van het type int

3.2.1 Het assignment-statement

3.2.2 Tekst op het scherm

3.2.3 Het keyword final

3.2.4 De coördinaten van Pane

3.2.5 Verkorte declaratie en initialisatie

3.3 De rekenkundige operatoren +, -, *, / en %

3.3.1 De gehele deling en de rest

3.3.2 Grote gehele getallen

3.3.3 Prioriteiten

3.4 Oefeningen

3.5 Meer operatoren

3.5.1 De toekenningsoperator +=

3.5.2 Andere toekenningsoperatoren

3.5.3 De increment-operator ++

3.5.4 De decrement-operator --

3.5.5 Postfix en prefix

3.6 Invoer van gehele getallen via een tekstvak

3.6.1 Lokale variabelen

3.6.2 Twee lokale variabelen met dezelfde naam

3.6.3 Attributen en lokale variabelen

3.6.4 Initialisatie van lokale variabelen en attributen 

3.6.5 NullPointerException

3.6.6 Componenten in een Pane plaatsen

3.7 Oefeningen

3.8 Tekenen met JavaFX

3.8.1 Kleur

3.8.2 Transparantie

3.8.3 De groeiende cirkel

3.9 De klasse Shape

3.9.1 De klasse Line

3.9.2 De klasse Rectangle

3.9.3 De klassen Circle en Ellipse

3.9.4 Vereniging, verschil en doorsnede

3.10 Samenvatting

3.11 Oefeningen

 

4 Objectgeoriënteerd programmeren

4.1 Inleiding

4.2 Het type double

4.2.1 Rekenkundige operatoren

4.2.2 Delen: de gehele en de normale deling

4.2.3 De operator %

4.2.4 Omzetten van int naar double: typecasting

4.2.5 Omzetten van double naar int

4.2.6 Invoer van double via een tekstvak

4.3 Een betere lay-out met een GridPane

4.3.1 Een TextField-event

4.3.2 Een niet te wijzigen TextField

4.3.3 Formatteren van uitvoer met String.format()

4.3.4 Ruimte om de componenten

4.3.5 Een Label

4.3.6 De broncode

4.3.7 Scheidingsteken in getallen

4.4 Oefeningen

4.5 Algoritme: de kassa

4.6 Een kassa is een object

4.6.1 De klasse Kassa

4.6.2 Data hiding

4.6.3 Een methode voor de kassa

4.6.4 Opvragen van de waarde van een attribuut

4.6.5 De klasse Kassa

4.7 Objecten maken

4.8 Gebruikersinterface voor de kassa

4.9 De kracht van objectgeoriënteerd programmeren

4.10 Statische methoden en constanten

4.10.1 Toevalsgetallen: random

4.10.2 Toevalsgetallen tussen andere waarden dan 0 en 1

4.11 Samenvatting

4.12 Oefeningen

 

5 Keuzes en herhalingen

5.1 Inleiding

5.2 Relationele en logische operatoren

5.2.1 Relationele operatoren

5.2.2 Logische operatoren: de en-operator &&

5.2.3 Een consoleapplicatie

5.2.4 Operanden

5.2.5 De of-operator ||

5.2.6 De niet-operator !

5.2.7 Een boolean-variabele

5.3 Het if-statement

5.3.1 Een ingewikkelder voorbeeld

5.4 Het if-else-statement

5.4.1 Deelbaarheid onderzoeken

5.5 Een sorteeralgoritme

5.5.1 Algoritme voor het verwisselen van twee waarden

5.5.2 Algoritme voor het sorteren van drie waarden

5.6 Wanneer zijn twee strings gelijk?

5.6.1 De methoden equals() en equalsIgnoreCase()

5.7 Oefeningen

5.8 Het for-statement

5.8.1 Controlegedeelte van het for-statement

5.8.2 De body van het for-statement

5.8.3 Zet geen puntkomma na het controlegedeelte

5.8.4 De tafel van 13

5.8.5 Een nette tabel

5.9 Andere mogelijkheden met een for-statement

5.9.1 Andere beginwaarden dan 0 of 1

5.9.2 Terugtellen

5.9.3 Grotere stappen

5.9.4 Variabele begin- en eindwaarden

5.9.5 Een for-statement waarvan de body niet wordt uitgevoerd

5.10 Een rijtje cirkels

5.11 Tekenen en schrijven op een canvas

5.11.1 Cirkels tekenen

5.12 Oefeningen

5.13 Het while-statement

5.13.1 Opmerkingen bij het while-statement

5.13.2 Oneindige herhaling

5.13.3 Gelijkwaardigheid van het for-statement en het while-statement 

5.14 Het do-while-statement

5.15 Samenvatting

5.16 Oefeningen

 

6 Ontwerpen en testen

6.1 Inleiding

6.2 Ontwerp van Datum

6.2.1 Een klasse in UML

6.2.2 Getters voor Datum

6.2.3 Setters voor Datum

6.2.4 Properties

6.2.5 Notatieverschillen Java en UML

6.2.6 Implementatie van Datum

6.2.7 Over this

6.2.8 Een kleine test

6.3 Oefeningen

6.4 O

ntwerpen op basis van verantwoordelijkheid 

6.4.1 Verantwoordelijkheden van een bankrekening

6.4.2 Het type van de attributen en methoden 

6.4.3 De implementatie van Bankrekening

6.5 Oefeningen

6.6 Een constructor

6.6.1 Constructor toevoegen

6.6.2 Een tweede constructor voor Bankrekening

6.6.3 Formele en actuele argumenten of parameters

6.7 Default constructor

6.7.1 In de broncode onzichtbare default constructor

6.7.2 In de broncode wél zichtbare default constructor

6.7.3 Constructor overloading bij Datum

6.7.4 Waarschuwing

6.7.5 In de ene constructor de andere aanroepen

6.7.6 Ambiguïteit

6.8 De methode toString()

6.8.1 De klasse Object en toString()

6.9 De volledige klasse Datum

6.9.1 Getters en setters automatisch genereren in NetBeans

6.9.2 Getters en setters automatisch genereren in Eclipse

6.10 Oefeningen

6.11 Testen van klassen: JUnit

6.11.1 Testen met JUnit in NetBeans

6.11.2 Testen met JUnit in Eclipse

6.11.3 Meer tests aan een methode toevoegen

6.11.4 Meer testmethoden toevoegen

6.12 Samenvatting

6.13 Oefeningen

 

7 Van domeinklasse tot implementatie

7.1 Inleiding

7.2 Een lesrooster

7.2.1 Analyse

7.2.2 Wat is de samenhang tussen de begrippen?

7.3 Domeinmodel en UML

7.3.1 Multipliciteit

7.3.2 Overzicht multipliciteiten in UML

7.3.3 Analyse, ontwerp en implementatie

7.3.4 Navigeerbaarheid

7.4 Implementatie

7.4.1 De klasse Tijdstip

7.4.2 De klasse Les

7.4.3 De klasse Lesrooster

7.4.4 De methode forEach()

7.4.5 Het for-each-statement

7.4.6 Een klein testprogramma voor Lesrooster

7.4.7 Beter toString() dan print()

7.4.8 StringBuffer

7.4.9 TextArea

7.5 Tussenstand

7.6 Wat is een ArrayList?

7.6.1 Toevoegen aan ArrayList 

7.7 Oefeningen

7.8 Kassa 2

7.8.1 Wikkelklasse

7.8.2 ArrayList met double

7.8.3 De methode System.out.printf()

7.9 Javadoc

7.9.1 Het schrijven en genereren van documentatie

7.9.2 De documentatie in NetBeans openen

7.9.3 De documentatie in Eclipse openen

7.9.4 Javadoc bij klassen

7.9.5 Javadoc bij constructors en methoden

7.9.6 Javadoc bij een bepaald item bekijken

7.9.7 Javadoc-commentaar automatisch invoegen in de broncode 

7.10 Arrays

7.10.1 Een array met int-waarden

7.10.2 De lengte van een array

7.10.3 De grenzen van de index

7.10.4 Array en for-each

7.10.5 Een array vullen met een for-statement

7.10.6 Een array met doubles

7.10.7 Verkorte declaratie en initialisatie

7.11 Samenvatting

7.12 Oefeningen

 

8 Overerving en polymorfie

8.1 Inleiding

8.2 De klasse Bank

8.2.1 Oplossing 1: twee lijsten

8.2.2 Oplossing 2: één lijst met instanties van Object

8.2.3 De operator instanceof

8.2.4 Statisch en dynamisch type

8.2.5 De klassen Betaalrekening en Spaarrekening

8.3 Oplossing 3: Overerving

8.3.1 Klassendiagram met overerving

8.3.2 Private en protected

8.3.3 Access modifiers

8.3.4 Een Betaalrekening is een Rekening

8.3.5 De Bank in werking

8.4 Intermezzo: Rechthoek

8.4.1 Overerving: FlexRechthoek

8.4.2 Constructor en overerving

8.4.3 Aanroep met super()

8.5 Overriding

8.5.1 Overerving en overriding in JavaFX

8.5.2 De annotatie @Override

8.6 Dynamische binding

8.6.1 Gebreken van de eerste Bank

8.6.2 Superioriteit van de tweede Bank

8.6.3 Polymorfie

8.6.4 Nogmaals de klasse Object en toString()

8.7 Samenvatting

8.8 Oefeningen

 

9 Abstracties

9.1 Inleiding

9.2 Een interface

9.2.1 Een abstractie

9.2.2 Referenties van een interfacetype

9.2.3 Interface in UML

9.2.4 Gevolgen van het implementeren van een interface

9.3 Een abstracte klasse

9.4 Meer dan één interface implementeren

9.4.1 Interfaces en abstracte klassen

9.4.2 Statische en default-methoden

9.5 Oefeningen

9.6 Lambdafuncties en functionele interfaces

9.6.1 Notatie van lambdafuncties

9.6.2 Een functionele interface

9.6.3 Drie lambdafuncties aan het werk

9.6.4 Event-handlers en lambdafuncties

9.7 Samenvatting

9.8 Oefeningen

 

10 Exception handling

10.1 Inleiding

10.2 Het genereren van een exceptie

10.3 Het opvangen van een exceptie: try en catch

10.3.1 Wat gebeurt er precies in een try-catch-blok?

10.3.2 Mededeling in een Alert-venster

10.3.3 Finally

10.4 Zelf een exceptie opwerpen: throw

10.4.1 Javadoc bij exceptie

10.4.2 Exceptie en informatie voor de gebruiker

10.5 Eén try, twee catches

10.6 De exceptie-klassen

10.6.1 Over de volgorde van de catch-blokken

10.7 Wat gebeurt er als je een exceptie niet opvangt?

10.7.1 De call stack

10.8 Rethrow

10.9 Samenvatting

10.10 Oefeningen

 

Index

Extra
Auteurs
Gertjan Laan
Gertjan Laan (www.gertjanlaan.nl) was als docent werkzaam in het hoger onderwijs. Hij gaf jaren les in wiskunde en programmeertalen, waaronder C++ en Java. Hij is auteur van diverse succesvolle boe... Meer

Lees meer

NIEUW | Het boek nu ook online

NIEUW | Het boek nu ook online
Dit product bestaat uit een boek inclusief website met hierop o.a. het online boek.

Gerelateerde uitgaven

Aan de slag met Excel 365 - 2021 vijfde druk, boek inclusief licentie aanvullende website

Aan de slag met Excel 365 – 2021 (5e druk)

Ben Groenendijk
€ 36,95
Bestellen
Aan de slag met Excel 365 - 2021 vijfde druk, boek inclusief licentie aanvullende website

Aan de slag met Excel 365 – 2021 (5e druk)

Ben Groenendijk
€ 36,95
Bestellen
Aan de slag met Scrum derde druk, boek inclusief licentie aanvullende website

Aan de slag met Scrum (3e druk)

Hendrik Jan van Randen
€ 31,50
Bestellen
© 2023 Boom Uitgevers Amsterdam

Klantenservice

Veelgestelde vragen
How to order
Contact
Bestelinformatie
Bestelprocedure
Retourneren
E-books
Online licentie

Over ons

Boom hoger onderwijs
Het team
Vacatures
Samenwerken?
Nieuwsbrief

Volg ons op social media

Op werkdagen voor 21.00 uur besteld, morgen in huis.
Gratis verzending in NL vanaf € 20,-.
Algemene voorwaardenAlgemene voorwaarden zakelijkCookieverklaringDigitale contentDisclaimerPrivacy policy