1 / 56

Hoofdstuk 2 : Inleiding tot Java Applicaties

Hoofdstuk 2 : Inleiding tot Java Applicaties. 2.1 Inleiding. In dit hoofdstuk Voorbeelden om enkele kenmerken van Java te illustreren Twee programma-vormen : applicaties en applets. 2.2 Eerste Java-programma : Een zin afdrukken. Welcome to Java Programming!.

jade-estes
Download Presentation

Hoofdstuk 2 : Inleiding tot Java Applicaties

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Hoofdstuk 2 : Inleiding tot Java Applicaties JAVA

  2. 2.1 Inleiding • In dit hoofdstuk • Voorbeelden om enkele kenmerken van Java te illustreren • Twee programma-vormen : • applicaties en • applets JAVA

  3. 2.2 Eerste Java-programma : Een zin afdrukken Welcome to Java Programming! Gewenste programma uitvoer : JAVA

  4. 1 // Fig. 2.1: Welcome1.java 2 // Een eerste programma in Java. 3 4 public class Welcome1 5 { 6 // main methode begint de uitvoering van Java applicatie 7 public static void main( String args[] ) 8 { 9 System.out.println( "Welcome to Java Programming!" ); 10 11 } // einde methode main 12 13 } // einde klasse Welcome1 JAVA

  5. Commentaar (lijn 1 en 2) • Beschrijft stukken code • Verhoogt de leesbaarheid van programma • Wordt door de Java-compiler genegeerd • 3 soorten : • Eén-lijn commentaar : // ... • Commentaar die uit meerdere lijnen bestaat : /* ... */ • Document commentaar : /** ... */ JAVA

  6. Blanco regel (lijn 3) • Zorgt voor de leesbaarheid van programma • Witregels, spaties en tabs = “wit-ruimte” karakters, door de compiler genegeerd JAVA

  7. 1 // Fig. 2.1: Welcome1.java 2 // Een eerste programma in Java. 3 4 public class Welcome1 5 { 6 // main methode begint de uitvoering van Java applicatie 7 public static void main( String args[] ) 8 { 9 System.out.println( "Welcome to Java Programming!" ); 10 11 } // einde methode main 12 13 } // einde klasse Welcome1 JAVA

  8. Klasse definitie (lijn 4) • Ieder Java programma => minstens één klasse door de programmeur gedefinieerd (= user-defined class) • Keyword= sleutelwoord, heeft een speciale betekenis in Java • class gevolgd door naam van klasse (= identifier) • Afspraak : Naam klasse begint altijd met een hoofdletter. Alsook elk woord in de klasse-naam. Vb.: VoorbeeldKlasseNaam JAVA

  9. Identifier • Rij karakters bestaande uit letters, cijfers, underscores (_) en dollartekens ($) • Begint nooit met een cijfer, heeft geen spaties • Voorbeelden: Welcome1, $value, value, button7 • 7button is ongeldig • Java is case sensitive (hoofdletter-gevoelig) • a1A1 • public sleutelwoord • Wordt later besproken JAVA

  10. Linkerhaakje (lijn 5) • Blokken vormen • Rechterhaakje sluit het blok (lijn 13) JAVA

  11. 1 // Fig. 2.1: Welcome1.java 2 // Een eerste programma in Java. 3 4 public class Welcome1 5 { 6 // main methode begint de uitvoering van Java applicatie 7 public static void main( String args[] ) 8 { 9 System.out.println( "Welcome to Java Programming!" ); 10 11 } // einde methode main 12 13 } // einde klasse Welcome1 JAVA

  12. Onderdeel van elke Java applicatie (7) • Applicaties starten met de uitvoering van main • main is een methode • Java applicaties bevatten één of meerdere methodes • Juist één methode moet main genoemd worden • Methodes verrichten taken en kunnen informatie teruggeven • void betekent geen teruggeef-informatie JAVA

  13. Linkerhaakje = begin body main • Afgesloten door rechterhaakje } (lijn 11) • In body : instructies • System.out • Standard output object • Drukt af in command window(MS-DOS prompt) • Methode System.out.println • Toont een zin • Argument tussen haakjes • instructies=statements • Statements worden afgesloten met ; JAVA

  14. 2.2.1 Compilatie en uitvoering van Java Applicatie • Bewaren • Bestandsnaam = klassenaam.java • Vb. : Welcome1.java • javac Welcome1.java (compiler) • Welcome1.class (=uw applicatie, bestaande uit bytecodes) • java Welcome1 (interpreter) • uitvoering van applicatie JAVA

  15. 2.3 Eerste Java programma wijzigen. • Eén zin afdrukken met meerdere statements • Meerdere zinnen afdrukken met één enkel statement JAVA

  16. 9 System.out.print( "Welcome to " ); 10 System.out.println( "Java Programming!" ); 2.3.1 Eén zin met meerdere statements Welcome to Java Programming! JAVA

  17. 9 System.out.println ( "Welcome\nto\nJava\nProgramming!" ); 2.3.2 Meerdere zinnen met één enkel statement • Newline karakter (\n) • “Speciale tekens” bij methodes System.out.print en system.out.println • new line = harde return Welcome to Java Programming! JAVA

  18. Escape characters • Backslash ( \ ) • Speciale karakters die output vormgeven • Voorbeelden : • \n • \t • \r • \\ • \” JAVA

  19. 2.4 Tekst in een Dialog Box tonen • Weergave • Meeste Java applicaties gebruiken vensters of een dialog box • We gebruikten het command venster • De klasse JOptionPane laat ons het gebruik van dialog boxes toe JAVA

  20. Packages • Verzameling van voorgedefinieerde klassen • Groepen gerelateerde klassen = packages • Verzameling van alle packages = Java class library of Java applications programming interface (Java API) • JOptionPane zit in javax.swing package • Deze package bevat klassen om Grafische User Interfaces (GUIs) te definiëren JAVA

  21. 1 // Fig. 2.6: Welcome4.java 2 // Meerdere lijnen in een dialog box afdrukken 3 4 // Java extension packages 5 import javax.swing.JOptionPane; // importeert klasse JOptionPane 6 7 public class Welcome4 8 { 9 // main methode begint de uitvoering van Java applicatie 10 public static void main( String args[] ) 11 { 12 JOptionPane.showMessageDialog( 13 null, "Welcome\nto\nJava\nProgramming!" ); 14 15 System.exit( 0 ); // beëindigt de applicatie 16 17 } // einde methode main 18 19 } // einde klasse Welcome4 JAVA

  22. Twee groepen packages in Java API • Core (=kern) packages • Beginnen met java • Zitten in Java 2 Software Development Kit • Extension (=uitbreidings) packages • Beginnen met javax • Nieuwe Java packages JAVA

  23. import statements • Laten de compiler toe de gebruikte klassen in een programma te identificeren en te localiseren • In ons vb. : import statement vertelt de compiler om de klasse JOptionPane uit de javax.swing package te laden JAVA

  24. 1 // Fig. 2.6: Welcome4.java 2 // Meerdere lijnen in een dialog boxafdrukken 3 4 // Java extension packages 5 import javax.swing.JOptionPane; // importeert klasse JOptionPane 6 7 public class Welcome4 { 8 9 // main methode start de uitvoering van Java applicatie 10 public static void main( String args[] ) 11 { 12 JOptionPane.showMessageDialog( 13 null, "Welcome\nto\nJava\nProgramming!" ); 14 15 System.exit( 0 ); // beëindigt de applicatie 16 17 } // einde methode main 18 19 } // einde klasse Welcome4 JAVA

  25. Aanroep methode showMessageDialog van de klasse JOptionPane • Twee argumenten • Meerdere argumenten scheiden met komma’s • Nu is eerste argument altijd null • Tweede argument is string die wordt getoond • showMessageDialog is een static methode van de klasse JOptionPane • static methodes aanroepen via : klasse-naam . methode-naam JAVA

  26. Aanroep static method exit van de klasse System • Stopt de applicatie • Gebruiken in elke applicatie die een GUI toont • 0-argument = applicatie is correct geëindigd • Niet-nul = meestal heeft zich een fout voorgedaan • Klasse System deel van package java.lang • Geen import statement nodig • java.lang automatisch geïmporteerd in elk Java programma JAVA

  27. 2.5 Andere Java Applicatie: Optellen van gehele getallen • Programma • Gebruikt input dialogs om twee waarden aan de gebruiker te vragen • Gebruikt message dialog om de som van de twee waarden te tonen JAVA

  28. 1 // Fig. 2.9: Addition.java 2 // Een bijkomend programma. 3 4 // Java extension packages 5 import javax.swing.JOptionPane; // importeert klasse JOptionPane 6 7 public class Addition 8 { 9 // main methode start de uitvoering van Java applicatie 10 public static void main( String args[] ) 11 { 12 String firstNumber; // eerste string ingegeven door gebruiker 13 String secondNumber; // tweede string ingegeven door gebruiker 14 int number1; // eerste getal om op te tellen 15 int number2; // tweede getal om op te tellen 16 int sum; // som van number1 en number2 17 JAVA

  29. Variabelen • Geheugenlocatie waarin een waarde wordt gestockeerd • Heeft een naam en is van een bepaald datatype • firstNumber en secondNumber zijn van data type String (package java.lang) • bevat strings • Naam van variabele = willekeurige identifier • Declaraties eindigen met ; • Mogelijk meerdere variabelen van hetzelfde type tegelijkertijd te declareren • Voeg commentaar toe om het doel van variabelen te beschrijven JAVA

  30. Variabelen van het type int • int bevat gehele getallen : 0, -4, 97 • Data types float en double kunnen floating-point getallen stockeren • Data type char bevat één enkel karakter: x, $, \n, 7 • Primitieve data types - later in hoofdstuk 4 JAVA

  31. 18 // lees eerste getal van gebruiker in als een String 19 firstNumber = 20 JOptionPane.showInputDialog( "Enter first integer" ); 21 22 // lees tweede getal van gebruiker in als een String 23 secondNumber = 24 JOptionPane.showInputDialog( "Enter second integer" ); 25 JAVA

  32. Methode JOptionPane.showInputDialog • toont de dialoogbox en leest een string in • Bij ingave van een verkeerd type van data (niet-integer) of bij klikken op Cancel, zal er zich een fout voordoen • Inleesresultaat van showInputDialog toekennen aan firstNumber • Toekenningsstatement • = binaire operator - heeft twee operanden • Rechterlid wordt geëvalueerd en toegekend aan variabele in het linkerlid • Lees als: firstNumber krijgt de waarde van JOptionPane.showInputDialog( "Enter first integer" ) JAVA

  33. 26 // converteer getallen van type String naar het type int 27 number1 = Integer.parseInt( firstNumber ); 28 number2 = Integer.parseInt( secondNumber ); 29 30 // Sommeer de getallen 31 sum = number1 + number2; 32 JAVA

  34. Methode Integer.parseInt • Converteert String argument in een integer (type int) • Klasse Integer in java.lang • int teruggegeven door Integer.parseInt, wordt toegekend aan de variabele number1 (line 27) • Herinner u dat number1 als int werd gedeclareerd • Lijn 28 idem JAVA

  35. Toekenningsstatement • Berekent de som van number1 en number2 (rechterzijde) • Gebruikt de toekenningsoperator = om het resultaat in de variabele sum te stoppen • Lees als:sum krijgt de waarde van number1 + number2 • number1 and number2 zijn operanden JAVA

  36. sum sum 0 3 • Visuele presentatie • sum = 0; number1 = 1; number2 = 2; • sum = number1 + number2; na uitvoering van statement JAVA

  37. 33 // toon de resultaten 34 JOptionPane.showMessageDialog( 35 null, "The sum is " + sum, "Results", 36 JOptionPane.PLAIN_MESSAGE ); 37 38 System.exit( 0 ); // beëindigt de applicatie 39 40 } // einde methode main 41 42 } // eind klasse Addition JAVA

  38. showMessageDialog om resultaten te tonen • "The sum is " + sum • Samenvoeging van een String en een ander data type • Dit resulteert in een nieuwe string • Als sum117 bevat, dan resulteert "The sum is " + sumin een nieuwe string "The sum is 117” • Meer over strings in hoofdstuk 10 JAVA

  39. Andere versie van showMessageDialog • Eist vier argumenten (in plaats van twee) • Eerste argument: null • Tweede: weer te geven string • Derde: string in titelbar • Vierde: type van bericht met icoon • Lijn 36 geen icoon: JoptionPane.PLAIN_MESSAGE JAVA

  40. JAVA

  41. 2.7 Rekenkundige bewerkingen • Gebruik • * voor vermenigvuldiging • / voor deling • +, - • Geen operator voor exponent (zie hoofdstuk 5) • Integer deling kapt quotiënt af 7 / 5 => 1 • Rest-operator % 7 % 5 => 2 JAVA

  42. Prioriteitsregels • Haakjes ( ) • * , / , % • +, - • Bij gelijke prioriteit => regels van de associativiteit (van L naar R) JAVA

  43. 2.8 Beslissingen: Relationele operatoren • if controlestructuur • if (voorwaarde) body_voorwaarde_geldig=> als de voorwaarde geldt (= true), dan wordt het statement uitgevoerd • Voorwaarden kunnen geformuleerd worden met relationele operatoren en/of gelijkheidsoperatoren JAVA

  44. Operator In Java = = = exact gelijk  != verschillend > > groter dan < < kleiner dan  >= groter dan of gelijk aan  <= kleiner dan of gelijk aan JAVA

  45. 1 // Fig. 2.20: Comparison.java 2 // Vergelijk integers gebruikmakend van if structuur, relationele operatoren 3 // en gelijkheidsoperatoren. 4 5 // Java extension packages 6 import javax.swing.JOptionPane; 7 8 public class Comparison 9 { 10 // main method start de uitvoering van Java applicatie 11 public static void main( String args[] ) 12 { 13 String firstNumber; // eerste string ingegeven door gebruiker 14 String secondNumber; // tweede string ingegeven door gebruiker 15 String result; // een string die de uitvoer bevat 16 int number1; // eerste getal om te vergelijken 17 int number2; // tweede getal om te vergelijken 18 JAVA

  46. 19 // lees eerste getal van gebruiker in als een string 20 firstNumber = 21 JOptionPane.showInputDialog( "Enter first integer:" ); 22 23 // lees tweede getal van gebruiker in als een string 24 secondNumber = 25 JOptionPane.showInputDialog( "Enter second integer:" ); 26 27 // converteer getallen van type String naar het type int 28 number1 = Integer.parseInt( firstNumber ); 29 number2 = Integer.parseInt( secondNumber ); 30 31 // initialiseer het resultaat als een lege String 32 result = ""; 33 JAVA

  47. 34 if ( number1 == number2 ) 35 result = number1 + " == " + number2; 36 37 if ( number1 != number2 ) 38 result = number1 + " != " + number2; 39 40 if ( number1 < number2 ) 41 result = result + "\n" + number1 + " < " + number2; 42 43 if ( number1 > number2 ) 44 result = result + "\n" + number1 + " > " + number2; 45 46 if ( number1 <= number2 ) 47 result = result + "\n" + number1 + " <= " + number2; 48 49 if ( number1 >= number2 ) 50 result = result + "\n" + number1 + " >= " + number2; 51 JAVA

  48. if structuur om te testen op gelijkheid (= =) • Als de conditie waar (true) is • Rechterlid wordt eerst geëvalueerd, nieuwe string wordt toegekend aan result • result = concatenatie variabelen + operator • result = result + andere strings • Als de conditie onwaar (false) is, dan wordt statement overgeslagen JAVA

  49. 52 // Toon resultaten 53 JOptionPane.showMessageDialog( 54 null, result, "Comparison Results", 55 JOptionPane.INFORMATION_MESSAGE ); 56 57 System.exit( 0 ); // beëindigt de applicatie 58 59 } // einde methode main 60 61 } // einde klasse Comparison JAVA

  50. Prioriteitsregels • ( ) • * , / , % • +, - • <, <=, >, >= • ==, != • = • Bij gelijke prioriteit => alle operatoren worden verbonden van links naar rechts, behalve = (assignment) • x = y = z => x = (y = z) JAVA

More Related