Klassen en objecten

13
Klassen en objecten

description

Klassen en objecten. Gebruikersinterface. Swing (nieuw) en AWT (oud) Levert de GUI in Java applicaties: Vensters, knoppen, invoervakken, schuifbalken, keuzelijsten, etc. Wordt beschikbaar gemaakt via libraries. Opstartklasse. // Opstartklasse voor een applicatie import javax.swing .*; - PowerPoint PPT Presentation

Transcript of Klassen en objecten

Page 1: Klassen en objecten

Klassen en objecten

Page 2: Klassen en objecten

Gebruikersinterface

• Swing (nieuw) en AWT (oud)• Levert de GUI in Java applicaties:– Vensters, knoppen, invoervakken, schuifbalken,

keuzelijsten, etc.• Wordt beschikbaar gemaakt via libraries

Page 3: Klassen en objecten

Opstartklasse// Opstartklasse voor een applicatieimport javax.swing.*;

public class Vb0201 extends JFrame{ public static void main( String[] args ) { // Maak een frame JFrame frame = new Vb0201(); frame.setSize( 400, 200 ); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); frame.setTitle( "Eerste applicatie" ); frame.setVisible( true ); }}

Page 4: Klassen en objecten

Wat is een klasse?

• Een beschrijving voor objecten• Een soort blauwdruk voor objecten

• Maar wat is dan een object?• Een instantie/exemplaar van een klasse• Een zichtbaar/tastbaar iets (bijv.: een venster,

een knop, een weergave van een kassa, etc.)

Page 5: Klassen en objecten

Elementen uit opstartklasse

• import javax.swing.*;– Importeer uit de Java bibliotheek de package Swing (en

daarvan alle klassen)

• public class Vb0201 extends JFrame {– Header van de klasse– Vb0201 is de naam van de klasse– is een uitbreiding (extends) van klasse JFrame – Kan daardoor methodes van die klasse gebruiken– { opent het blok waar de klasse definitie begint

Page 6: Klassen en objecten

Elementen uit opstartklasse

• public static void main( String[] args ) {– Deze methode genaamd main() moet in elke Java

applicatie voorkomen– Hier dus in de opstartklasse, het begin van alles– Neem de code letterlijk over; later leer je

begrijpen wat er staat– Deze regel is de kop van de methode; de body

volgt na { en wordt afgesloten met }

Page 7: Klassen en objecten

Elementen uit opstartklasse• JFrame frame = new Vb0201();– Creëer van klasse Vb0201 een nieuw object (middels operator new)

– Noem dit object frame– Het is van het type JFrame

• frame.setSize( 400, 200 );– Aanroep methode setSize() uit object frame– Methode komt beschikbaar vanuit klasse JFrame, waarvan frame een instantie is!

– Bepaalt grootte van het frame

Page 8: Klassen en objecten

Elementen uit opstartklasse

• frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ) ;– Aanroep methode setDefaultCloseOperation() uit

object frame– Methode komt beschikbaar vanuit klasse JFrame,

waarvan frame een instantie is!– Bepaalt wat er moet gebeuren als frame gesloten

wordt door gebruiker

Page 9: Klassen en objecten

Elementen uit opstartklasse

• frame.setTitle( “Eerste applicatie” ) ;– Aanroep methode setTitle() uit object frame– Methode komt beschikbaar vanuit klasse JFrame,

waarvan frame een instantie is!– Geeft titel aan venster

• frame.setVisible( true );– Maakt venster zichtbaar

Page 10: Klassen en objecten

Een JPanel

• Het frame is gemaakt met de opstartklasse• Het is echter alleen nog maar een leeg venster

met een titel• Met JPanel kun je zaken aan het venster

toevoegen, zoals knoppen, tekstvelden, etc.

Page 11: Klassen en objecten

Een JPanel // Een paneel met een knop en een tekstvakimport javax.swing.*;

public class Paneel extends JPanel { // header vd klasse private JButton knop; // declaratie van velden private JTextField tekstvak;

public Paneel() { // constructor (zelfde naam!) knop = new JButton( "Klik" ); // maak knop uit klasse JButton tekstvak = new JTextField( 10 ); // maakt tekstvak add( knop ); // zet knop op scherm add( tekstvak ); // zet tekstvak op scherm } // sluit constructor} // sluit klasse

Page 12: Klassen en objecten

JPanel en JFrame samen// Opstartklasse voor applicatie met paneelimport javax.swing.*;

public class Vb0202 extends JFrame {

public static void main( String args[] ) { JFrame frame = new Vb0202(); frame.setSize( 400, 200 ); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); frame.setTitle( "Voorbeeld 0202" ); JPanel paneel = new Paneel(); // maak JPanel object uit klasse Paneel() frame.setContentPane( paneel ); // koppel dit paneel aan frame frame.setVisible( true ); }}

Page 13: Klassen en objecten

Samenvatting

• Bij het starten van een Java applicatie wordt als eerste methode main() uitgevoerd

• Hierin wordt een venster gemaakt…• …en bepaalt eigenschappen van dat venster• Er wordt een paneel gemaakt, wat dient als

content van het venster