KontoVerwalten 1.0 (Alpha) und 1.1 (Final) [DEUTSCH]
Vor
paar Stunden haben wir auf unserer Facebookseite und auf Twitter über das
Programm oder App welches den Namen “KontoVerwalten“ besitzt mitgeteilt, dass
wir es auf GitHub hochladen werden. Somit lade ich die Versionen 1.0 und 1.1
auf GitHub hoch und möchte hier auf Java2Enterprise die Rezension
darüberschreiben. Das Programm Verwaltet die Kontodaten eines Kunden bei einer
beliebigen Bankinstitut wie Kontoinhaber, Kontonummer, Kontostand, BIC, IBAN,
Bank und Zustand der Konto. Das Programm speichert die angegebenen String,
double und integer Werte nicht nur im Arbeitsspeicher sondern hat ebenfalls
Zugriff auf die Festplatte. Dies hat den Vorteil, dass die angegebenen
Informationen nicht nur dann gespeichert werden wenn das Programm läuft sondern
kann jederzeit vom Speicher abgerufen werden. Bis jetzt hatten wir Programme
geschrieben, in denen die jeweiligen Werte/Attribute nur dann gespeichert
wurden, wenn das Programm im Betrieb war. Sobald das Programm beendet wurde
oder vom Speicher gelöscht worden war, wurden ebenfalls die gespeicherten
Attribute vom Speicher gelöscht. Als Beispiel könnt ihr euch den Beispiel
>>HIER<< mit dem ArrayList und LinkedList nehmen. Dort haben wir
eine ArrayList und LinkedList programmiert in dem wir Werte als String und
Integer sowie Double Werte eingespeichert haben. Diese wurden von dem Compiler
solange gemerkt solange das Programm aufgeführt wurde. Nach dem Beenden der
Konsole Anwendung wurden diese wieder vom Speicher gelöscht. Das wurde vom
Betriebssystem kontrolliert unternommen damit mehr Speicher für das
Betriebssystem zur Verfügung steht. Kommen wir wieder zu unserem Programm.
Obwohl wir bis Heute keinerlei GUI (GRAPHICAL USER INTERFACE) Applikationen
programmiert haben ist es unwahrscheinlich den Quellcode zu verstehen. Jedoch
diejenigen, die sich mit den Beispielen, welches ich in den Vergangenen Wochen
hier auf der Webseite und auf GitHub hochgeladen habe, auseinander setzten
kann, werden sich nicht schwer tun und meine Hingehens Weise nachvollziehen
können.
Wir
wenden uns zu unserem Programm. Ich habe das identische Datei, welches ich >>Version 1.1<< und >>Version 1.0<< hochgeladen habe, unten eingetragen und werde euch den
Codeverlauf Schritt für Schritt erklären. Sobald ihr Fragen habt bitte ich euch
mich mit einem Kommentar oder per Mail zu benachrichtigen.
/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/
Zeile
000 definieren wir unsere Package in denen sich unsere Klassen befinden.
Zeile
002 – 005 importieren wir die Pakete mit denen wir voreingestellte Funktionen
bedienen.
In
der Klasse „KontoVerwalten“ welches wir in der Zeile 007 programmiert haben
befindet sich insgesamt drei Klassenattribute mit dem Datentypen String, double
und boolean.
Diese
Klasse beinhaltet ebenfalls zwei Konstruktoren. Der erste Konstruktor ist ein
defaultkonstruktor und das zweite ist ein Konstruktor welches bestimmte
Parameter von dem Benutzer erwartet. Ohne diese Parameter würde das Programm
nichts machen können da in dem Default Konstruktor keine Funktion
einprogrammiert worden ist.
Ab
der Zeile 020 fängt die Methode an, die den Kontostand der Benutzer abfrägt.
In
der Zeile 024 wird der Kontostand, sobald diese Methode aufgerufen wird,
geleert was bedeutet, dass die Variable stand = 0 gesetzt wird.
In
der Zeile 028 wird ein double Parameter von der Methode erwartet. Dieses Wert
wird zu dem aktuellen Kontostand addiert und mit dem return Statement
zurückgegeben.
In
der Zeile 032 kann der Benutzer diesmal das Geld von dem aktuellen Kontostand
abbuchen. Hier ist eine Verzweigung nötig. Falls der Benutzer mehr Geld abheben
möchte, also wenn der Betrag größer als das Betrag welches im Konto verfügbar
ist, dann wird -1 ausgeliefert was in
der Programmiersprache meistens als False gewertet wird. Sobald der Geldbetrag
welches wir abbuchen möchten kleiner gleich dem Kontostand ist, wird das Geld
ausgezahlt.
Ab
der Zeile 042 wird die Klasse zur Entwicklung der JFrame programmiert. In
dieser Klasse werden die Tasten,
Textfelder, Farben etc. programmiert. Natürlich wird hier die Größe,
Startposition, Schriftart, -größe, etc. programmiert.
In
der Zeile 044 wird die Klasse “KontoAnzeigen“ mit der Klasse “KontoVerwalten“
verkettet.
In
der Zeile 104 wird die Klasse Listener programmiert. Diese Klasse implementiert
von dem Paketen ActionListener. Auf deutsch Aktion hörer. Das bedeutet, dass
diese Funktion auf eine Eingabe des Benutzers wartet, sobald diese die
Anwendung gestartet hat. Also der ActionListener ist stets immer da, sobald das
Programm läuft. Wenn wir den Button “Laden“ tätigen wird die Methode
“liesKonto“ auf der Zeile 143 ausgelöst. Diese Methode ruft die beiden
Funktionen FileReader und BufferedReader. Mithilfe von FileReader können wir
Textdateien einlesen und mit FileWriter können wir Textdateien schreiben. Zudem
benötigen wir BufferedReader welches wir über dem FileReader legen ansonsten
müssten wir die Zeichen/Buchstaben/Ziffern etc einzeln lesen und überprüfen.
Genau das wird ebenfalls in der Zeile 158 ebenfalls unternommen. In dieser
Methode werden die Angaben welches der Benutzer in das Programm eingegeben hat,
in einer Textdatei eingespeichert welches sich in dem Ordner befindet, in denen
sich ebenfalls die Anwendung befindet.
In
der Main Methode der beiden Versionen wird der Konstruktor, welches Parameter
erwartet, aufgerufen. Bei der Objekterzeugung müssen wir die Variablen an der
richtigen stelle einordnen. Der Konstruktor erwartet als erstes den Namen,
welches am Anfang im Speicher angelegt werden soll. In diesem fall ist das der
Donald Duck. Danach kommt sein Kontostand. Herr Duck hat diesmal sehr wenig
Geld. Dieses ist 200.00 Im Entenhausen hatte er es viel besser. Danach kommt
als boolean der Zustand der Konto.
/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/-/
Programm KontoVerwalten 1.0
(ALPHA)
000 package java2enterprise;
001
002 import java.io.*;
003 import java.awt.*;
004 import java.awt.event.*;
005 import javax.swing.*;
006
007 public class KontoVerwalten {
008 public String inhaber;
009 private double stand;
010 public boolean gesperrt;
011
012 KontoVerwalten() { }
013
014 KontoVerwalten(String inhaber, double stand, boolean gesperrt) {
015 this.inhaber = inhaber;
016 this.stand = stand;
017 this.gesperrt = gesperrt;
018 }
019
020 public double abfragen() {
021 return stand;
022 };
023
024 public void leeren() {
025 stand = 0;
026 };
027
028 public void einzahlen(double betrag) {
029 stand += betrag;
030 };
031
032 public double abheben(double betrag) {
033 if (betrag<=stand) {
034 stand -= betrag;
035 return betrag; }
036 else {
037 return -1;
038 }
039 };
040 }
041
042 class KontoAnzeige
extends JFrame
{
043
044 KontoVerwalten konto;
045
046 JTextField feldInhaber, feldStand, feldGesperrt;
047
048 KontoAnzeige(KontoVerwalten konto) {
049
050 this.konto = konto;
051
052 setLayout(new GridLayout(0, 1));
053
054 JLabel lab = new JLabel("Inhaber:");
055 lab.setFont(new Font("Arial",Font.BOLD,24));
056 add(lab);
057 feldInhaber = new JTextField();
058 feldInhaber.setFont(new Font("Arial",Font.BOLD,24));
059 add(feldInhaber);
060 lab = new JLabel("Stand:");
061 lab.setFont(new Font("Arial",Font.BOLD,24));
062 add(lab);
063 feldStand = new JTextField();
064 feldStand.setFont(new Font("Arial",Font.BOLD,24));
065 add(feldStand);
066 lab = new JLabel("Gesperrt:");
067 lab.setFont(new Font("Arial",Font.BOLD,24));
068 add(lab);
069 feldGesperrt = new JTextField();
070 feldGesperrt.setFont(new Font("Arial",Font.BOLD,24));
071 add(feldGesperrt);
072
073 Listener lis = new Listener();
074
075 JButton but = new JButton("Anzeigen");
076 but.setFont(new Font("Arial",Font.BOLD,24));
077 but.addActionListener(lis);
078 add(but);
079 but = new JButton("Übernehmen");
080 but.setFont(new Font("Arial",Font.BOLD,24));
081 but.addActionListener(lis);
082 add(but);
083 but = new JButton("Laden");
084 but.setFont(new Font("Arial",Font.BOLD,24));
085 but.addActionListener(lis);
086 add(but);
087 but.setFont(new Font("Arial",Font.BOLD,24));
088 but = new JButton("Speichern");
089 but.setFont(new Font("Arial",Font.BOLD,24));
090 but.addActionListener(lis);
091 add(but);
092 but = new JButton("Quit");
093 but.setFont(new Font("Arial",Font.BOLD,24));
094 but.addActionListener(lis);
095 add(but);
096 setLocation(200,200);
097 pack();
098 setVisible(true);
099 setSize(300, 400);
100 setTitle("KontoVerwalten Version 1.0");
101 setResizable(false);
102 }
103
104 class Listener
implements ActionListener
{
105
106 public void actionPerformed(ActionEvent e) {
107
108 if (e.getActionCommand().equals("Anzeigen")) {
109 feldInhaber.setText(konto.inhaber);
110 feldStand.setText((new Double(konto.abfragen())).toString());
111 feldGesperrt.setText((new Boolean(konto.gesperrt)).toString());
112 }
113
114 if (e.getActionCommand().equals("Übernehmen"))
{
115 konto.inhaber = feldInhaber.getText();
116 konto.leeren();
117 konto.einzahlen(Double.parseDouble(feldStand.getText()));
118 konto.gesperrt =
Boolean.parseBoolean(feldGesperrt.getText());
119 }
120
121 if (e.getActionCommand().equals("Laden")) {
122 JFileChooser jfc = new JFileChooser();
123 int auswahl = jfc.showOpenDialog(null);
124 if (auswahl==JFileChooser.APPROVE_OPTION) {
125 liesKonto(jfc.getSelectedFile().getName());
126 feldInhaber.setText(konto.inhaber);
127 feldStand.setText((new Double(konto.abfragen())).toString());
128 feldGesperrt.setText((new Boolean(konto.gesperrt)).toString());
129 }
130 }
131
132 if (e.getActionCommand().equals("Speichern")) {
133 String dateiname =
JOptionPane.showInputDialog("Dateiname:");
134 speichereKonto(dateiname);
135 }
136
137 if (e.getActionCommand().equals("Quit")) {
138 System.exit(0);
139 }
140 }
141 }
142
143 public void liesKonto(String dateiname) {
144 try {
145 FileReader frd = new FileReader(dateiname);
146 BufferedReader brd = new BufferedReader(frd);
147 konto.inhaber = brd.readLine();
148 konto.leeren();
149 konto.einzahlen(Double.parseDouble(brd.readLine()));
150 konto.gesperrt = Boolean.parseBoolean(brd.readLine());
151 frd.close();
152 }
153 catch (Exception exc) {
154 JOptionPane.showMessageDialog(null,"Fehler
beim Laden");
155 }
156 }
157
158 public void speichereKonto(String dateiname) {
159 try {
160 FileWriter fwri = new FileWriter(dateiname);
161 PrintWriter pwri = new PrintWriter(fwri);
162 pwri.println(konto.inhaber);
163 pwri.println(konto.abfragen());
164 pwri.println(konto.gesperrt);
165 fwri.close();
166 }
167 catch (Exception exc) {
168 JOptionPane.showMessageDialog(null,"Fehler
beim Speichern");
169 }
170 }
171 }
000 package
java2enterprise;
001 import java.io.IOException;
002 public class
KontoIOGrafisch {
003 public static void main(String[]
args) throws IOException,
ClassNotFoundException {
004 KontoVerwalten meinKonto = new KontoVerwalten("Donald
Duck",200.0,false);
006 new KontoAnzeige(meinKonto);
007 }
008 }
Programm KontoVerwalten 1.1
(FINAL)
000 package java2enterpriseVersion1_1;
001
002 import java.io.*;
003 import java.awt.*;
004 import java.awt.event.*;
005 import javax.swing.*;
006 import javax.swing.border.EmptyBorder;
007
008 public class KontoVerwalten
{
009
010 public String
inhaber;
011 private double stand;
012 public boolean gesperrt;
013
014 KontoVerwalten() {
015 }
016 KontoVerwalten(String inhaber, double stand, boolean gesperrt) {
017 this.inhaber = inhaber;
018 this.stand = stand;
019 this.gesperrt = gesperrt;
020 }
021
022 public double abfragen() {
023 return stand;
024 };
025
026 public void leeren() {
027 stand = 0;
028 };
029
030 public void einzahlen(double betrag) {
031 stand += betrag;
032 };
033
034 public double abheben(double betrag) {
035 if (betrag<=stand)
{
036 stand -= betrag;
037 return betrag;
038 }
039 else {
040 return -1;
041 }
042 };
043 }
044
045 class KontoAnzeige extends
JFrame {
046
047 KontoVerwalten konto;
048
049 JTextField feldInhaber, feldStand, feldGesperrt;
050
051 KontoAnzeige(KontoVerwalten konto) {
052
053 this.konto = konto;
054
055 setLayout(new GridLayout(0, 1));
056
057 JLabel lab = new JLabel("Inhaber:");
058 lab.setFont(new Font("Arial",Font.BOLD,24));
059 add(lab);
060 feldInhaber = new JTextField();
061 feldInhaber.setFont(new Font("Arial",Font.BOLD,24));
062 add(feldInhaber);
063 lab = new JLabel("Stand:");
064 lab.setFont(new Font("Arial",Font.BOLD,24));
065 add(lab);
066 feldStand = new JTextField();
067 feldStand.setFont(new Font("Arial",Font.BOLD,24));
068 add(feldStand);
069 lab = new JLabel("Gesperrt:");
070 lab.setFont(new Font("Arial",Font.BOLD,24));
071 add(lab);
072 feldGesperrt = new JTextField();
073 feldGesperrt.setFont(new Font("Arial",Font.BOLD,24));
074 add(feldGesperrt);
075
076 Listener lis = new Listener();
077
078 JButton but = new JButton("Anzeigen");
079
080 but.setFont(new Font("Arial",Font.BOLD,24));
081 but.addActionListener(lis);
082 add(but);
083
084 but = new JButton("Übernehmen");
085 but.setFont(new Font("Arial",Font.BOLD,24));
086 but.addActionListener(lis);
087 add(but);
088
089 but = new JButton("Laden");
090 but.setFont(new Font("Arial",Font.BOLD,24));
091 but.addActionListener(lis);
092 add(but);
093
094 but.setFont(new Font("Arial",Font.BOLD,24));
095 but = new JButton("Speichern");
096 but.setFont(new Font("Arial",Font.BOLD,24));
097 but.addActionListener(lis);
098 add(but);
099
100 but.setFont(new Font("Arial",Font.BOLD,24));
101 but = new JButton("Support");
102 but.setFont(new Font("Arial",Font.BOLD,24));
103 but.addActionListener(lis);
104 add(but);
105
106 but = new JButton("Quit");
107 but.setFont(new Font("Arial",Font.BOLD,24));
108 but.addActionListener(lis);
109 add(but);
110
111 setLocation(200,200);
112 pack();
113 setVisible(true);
114 setSize(350, 600);
115 setTitle("KontoVerwalten Version 1.1");
116 setResizable(false);
117 setBackground(Color.BLUE);
118 }
119
120 class Listener
implements ActionListener
{
121
122 public void actionPerformed(ActionEvent e) {
123
124 if (e.getActionCommand().equals("Anzeigen"))
{
125 feldInhaber.setText(konto.inhaber);
126 feldStand.setText((new Double(konto.abfragen())).toString());
127 feldGesperrt.setText((new Boolean(konto.gesperrt)).toString());
128 }
129
130 if (e.getActionCommand().equals("Übernehmen"))
{
131 konto.inhaber = feldInhaber.getText();
132 konto.leeren();
133 konto.einzahlen(Double.parseDouble(feldStand.getText()));
134 konto.gesperrt =
Boolean.parseBoolean(feldGesperrt.getText());
135 }
136
137 if (e.getActionCommand().equals("Laden")) {
138 JFileChooser
jfc = new JFileChooser();
139 int auswahl = jfc.showOpenDialog(null);
140 if (auswahl==JFileChooser.APPROVE_OPTION) {
141 liesKonto(jfc.getSelectedFile().getName());
142 feldInhaber.setText(konto.inhaber);
143 feldStand.setText((new Double(konto.abfragen())).toString());
144 feldGesperrt.setText((new Boolean(konto.gesperrt)).toString());
145 }
146 }
147
148 if (e.getActionCommand().equals("Speichern"))
{
149 String dateiname =
JOptionPane.showInputDialog("Dateiname:");
150 speichereKonto(dateiname);
151 }
152
153 if (e.getActionCommand().equals("Support")) {
154 setIconImage(Toolkit.getDefaultToolkit().getImage("E:\\icons\\gjICOx3n_400x400.jpg"));
155 setTitle("Support");
156 setResizable(false);
157 setBounds(100, 100, 450, 300);
158 JPanel contentPane = new JPanel();
159 contentPane.setForeground(Color.WHITE);
160 contentPane.setBackground(Color.MAGENTA);
161 contentPane.setBorder(new EmptyBorder(5,
5, 5, 5));
162 setContentPane(contentPane);
163 contentPane.setLayout(null);
164
165 JLabel lblNewLabel = new JLabel("Java2Enterprise
TEAM");
166 lblNewLabel.setFont(new Font("Arial", Font.BOLD, 16));
167 lblNewLabel.setBounds(130, 11, 189, 29);
168 contentPane.add(lblNewLabel);
169
170 JLabel lblNewLabel_1 = new JLabel("Online
:");
171 lblNewLabel_1.setBackground(Color.MAGENTA);
172 lblNewLabel_1.setForeground(Color.BLACK);
173 lblNewLabel_1.setFont(new Font("Arial", Font.PLAIN, 11));
174 lblNewLabel_1.setBounds(10, 51, 54, 14);
175 contentPane.add(lblNewLabel_1);
176
177 JLabel lblNewLabel_2 = new JLabel("Facebook
-> ");
178 lblNewLabel_2.setFont(new Font("Arial", Font.PLAIN, 11));
179 lblNewLabel_2.setBackground(Color.MAGENTA);
180 lblNewLabel_2.setForeground(Color.BLACK);
181 lblNewLabel_2.setBounds(83, 51, 94, 14);
182 contentPane.add(lblNewLabel_2);
183
184 JLabel lblTwitter = new JLabel("Twitter
-> ");
185 lblTwitter.setFont(new Font("Arial", Font.PLAIN, 11));
186 lblTwitter.setBackground(Color.MAGENTA);
187 lblTwitter.setForeground(Color.BLACK);
188 lblTwitter.setBounds(83, 72, 94, 14);
189 contentPane.add(lblTwitter);
190
191 JLabel lblInstagram = new JLabel("Instagram
-> ");
192 lblInstagram.setFont(new Font("Arial", Font.PLAIN, 11));
193 lblInstagram.setBackground(Color.MAGENTA);
194 lblInstagram.setForeground(Color.BLACK);
195 lblInstagram.setBounds(83, 91, 94, 14);
196 contentPane.add(lblInstagram);
197
198 JLabel lblServiceLine = new JLabel("Service
:");
199 lblServiceLine.setFont(new Font("Arial", Font.PLAIN, 11));
200 lblServiceLine.setBackground(Color.MAGENTA);
201 lblServiceLine.setForeground(Color.BLACK);
202 lblServiceLine.setBounds(10, 152, 67, 14);
203 contentPane.add(lblServiceLine);
204
205 JLabel lblTelefon = new JLabel("Telefon
->");
206 lblTelefon.setFont(new Font("Arial", Font.PLAIN, 11));
207 lblTelefon.setBackground(Color.MAGENTA);
208 lblTelefon.setForeground(Color.BLACK);
209 lblTelefon.setBounds(83, 152, 94, 14);
210 contentPane.add(lblTelefon);
211
212 JLabel label = new JLabel("EMail
-> ");
213 label.setFont(new Font("Arial", Font.PLAIN, 11));
214 label.setBackground(Color.MAGENTA);
215 label.setForeground(Color.BLACK);
216 label.setBounds(83, 172, 94, 14);
217 contentPane.add(label);
218
219 JLabel lblNewLabel_3 = new JLabel("Anschrift
:");
220 lblNewLabel_3.setFont(new Font("Arial", Font.PLAIN, 11));
221 lblNewLabel_3.setBackground(Color.MAGENTA);
222 lblNewLabel_3.setForeground(Color.BLACK);
223 lblNewLabel_3.setBounds(10, 196, 67, 14);
224 contentPane.add(lblNewLabel_3);
225
226 JLabel lblJavaenterpriseTeam = new JLabel("Java2Enterprise
TEAM");
227 lblJavaenterpriseTeam.setFont(new Font("Arial", Font.PLAIN, 11));
228 lblJavaenterpriseTeam.setBackground(Color.MAGENTA);
229 lblJavaenterpriseTeam.setForeground(Color.BLACK);
230 lblJavaenterpriseTeam.setBounds(83, 196, 152,
14);
231 contentPane.add(lblJavaenterpriseTeam);
232
233 JLabel lblMuhammetEsmer = new JLabel("Muhammet
Esmer");
234 lblMuhammetEsmer.setFont(new Font("Arial", Font.PLAIN, 11));
235 lblMuhammetEsmer.setBackground(Color.MAGENTA);
236 lblMuhammetEsmer.setForeground(Color.BLACK);
237 lblMuhammetEsmer.setBounds(83, 212, 152, 14);
238 contentPane.add(lblMuhammetEsmer);
239
240 JLabel lblBreitscheidstrae = new JLabel("Breitscheidstra\u00DFe
100");
241 lblBreitscheidstrae.setFont(new Font("Arial", Font.PLAIN, 11));
242 lblBreitscheidstrae.setBackground(Color.MAGENTA);
243 lblBreitscheidstrae.setForeground(Color.BLACK);
244 lblBreitscheidstrae.setBounds(83,
229, 152, 14);
245 contentPane.add(lblBreitscheidstrae);
246
247 JLabel lblStuttgart = new JLabel("70176
Stuttgart");
248 lblStuttgart.setFont(new Font("Arial", Font.PLAIN, 11));
249 lblStuttgart.setBackground(Color.MAGENTA);
250 lblStuttgart.setForeground(Color.BLACK);
251 lblStuttgart.setBounds(83, 246, 152, 14);
252 contentPane.add(lblStuttgart);
253
254 JLabel lblNewLabel_4 = new JLabel("https://facebook.com/developerjava2enterprise/");
255 lblNewLabel_4.setFont(new Font("Arial", Font.PLAIN, 11));
256 lblNewLabel_4.setBackground(Color.MAGENTA);
257 lblNewLabel_4.setForeground(Color.BLACK);
258 lblNewLabel_4.setBounds(187, 51, 247, 14);
259 contentPane.add(lblNewLabel_4);
260
261 JLabel lblHttpstwittercomjedev = new JLabel("https://twitter.com/J2E_Dev");
262 lblHttpstwittercomjedev.setFont(new Font("Arial", Font.PLAIN, 11));
263 lblHttpstwittercomjedev.setBackground(Color.MAGENTA);
264 lblHttpstwittercomjedev.setForeground(Color.BLACK);
265 lblHttpstwittercomjedev.setBounds(187, 72,
247, 14);
266 contentPane.add(lblHttpstwittercomjedev);
267
268 JLabel lblHttpsinstagramcomjavaenterprise = new JLabel("https://instagram.com/java2enterprise/");
269 lblHttpsinstagramcomjavaenterprise.setFont(new Font("Arial", Font.PLAIN, 11));
270 lblHttpsinstagramcomjavaenterprise.setBackground(Color.MAGENTA);
271 lblHttpsinstagramcomjavaenterprise.setForeground(Color.BLACK);
272 lblHttpsinstagramcomjavaenterprise.setBounds(187,
91, 247, 14);
273 contentPane.add(lblHttpsinstagramcomjavaenterprise);
274
275 JLabel label_3 = new JLabel("+49 176
3685 3169");
276 label_3.setFont(new Font("Arial", Font.PLAIN, 11));
277 label_3.setBackground(Color.MAGENTA);
278 label_3.setForeground(Color.BLACK);
279 label_3.setBounds(187, 152, 247, 14);
280 contentPane.add(label_3);
281
282 JLabel lblMuhammetesmergmailcom = new JLabel("muhammetesmer61@gmail.com");
283 lblMuhammetesmergmailcom.setFont(new Font("Arial", Font.PLAIN, 11));
284 lblMuhammetesmergmailcom.setBackground(Color.MAGENTA);
285 lblMuhammetesmergmailcom.setForeground(Color.BLACK);
286 lblMuhammetesmergmailcom.setBounds(187, 172,
247, 14);
287 contentPane.add(lblMuhammetesmergmailcom);
288
289 JLabel lblTelegram = new JLabel("Telegram
-> ");
290 lblTelegram.setFont(new Font("Arial", Font.PLAIN, 11));
291 lblTelegram.setBackground(Color.MAGENTA);
292 lblTelegram.setForeground(Color.BLACK);
293 lblTelegram.setBounds(83, 110, 94, 14);
294 contentPane.add(lblTelegram);
295
296 JLabel
lblHttpstmejavaenterprisesupport = new JLabel("https://t.me/java2enterprise4support");
297 lblHttpstmejavaenterprisesupport.setFont(new Font("Arial", Font.PLAIN, 11));
298 lblHttpstmejavaenterprisesupport.setBackground(Color.MAGENTA);
299 lblHttpstmejavaenterprisesupport.setForeground(Color.BLACK);
300 lblHttpstmejavaenterprisesupport.setBounds(187,
110, 247, 14);
301 contentPane.add(lblHttpstmejavaenterprisesupport);
302
303 JLabel lblWebseite = new JLabel("Webseite
-> ");
304 lblWebseite.setFont(new Font("Arial", Font.PLAIN, 11));
305 lblWebseite.setBackground(Color.MAGENTA);
306 lblWebseite.setForeground(Color.BLACK);
307 lblWebseite.setBounds(83, 127, 94, 14);
308 contentPane.add(lblWebseite);
309
310 JLabel lblHttpswwwjavaenterpriseblogspotde = new JLabel("https://www.java2enterprise.blogspot.de/");
311 lblHttpswwwjavaenterpriseblogspotde.setFont(new Font("Arial", Font.PLAIN, 11));
312 lblHttpswwwjavaenterpriseblogspotde.setBackground(Color.MAGENTA);
313 lblHttpswwwjavaenterpriseblogspotde.setForeground(Color.BLACK);
314 lblHttpswwwjavaenterpriseblogspotde.setBounds(187,
127, 247, 14);
315 contentPane.add(lblHttpswwwjavaenterpriseblogspotde);
316
317 JButton
btnNewButton = new JButton("Zur\u00FCck");
318 btnNewButton.addActionListener(new ActionListener() {
319 public void actionPerformed(ActionEvent arg0) {
320 //
Geht wieder zum Programm Zurück
321 KontoVerwalten
meinKonto = new KontoVerwalten("Donald Duck",200.0,false);
322 new KontoAnzeige(meinKonto);
323 }
324 });
325 btnNewButton.setBounds(345, 242, 89, 23);
326 contentPane.add(btnNewButton);
327 }
328
329 if (e.getActionCommand().equals("Quit")) {
330 System.exit(0);
331 }
332 }
333 }
334
335 public void liesKonto(String dateiname) {
336 try {
337 FileReader frd = new FileReader(dateiname);
338 BufferedReader brd = new BufferedReader(frd);
339 konto.inhaber = brd.readLine();
340 konto.leeren();
341 konto.einzahlen(Double.parseDouble(brd.readLine()));
342 konto.gesperrt = Boolean.parseBoolean(brd.readLine());
343 frd.close();
344 }
345 catch (Exception exc) {
346 JOptionPane.showMessageDialog(null,"Fehler
beim Laden");
347 }
348 }
349
350 public void speichereKonto(String dateiname) {
351 try {
352 FileWriter fwri = new FileWriter(dateiname);
353 PrintWriter pwri = new PrintWriter(fwri);
354 pwri.println(konto.inhaber);
355 pwri.println(konto.abfragen());
356 pwri.println(konto.gesperrt);
357 fwri.close();
358 }
359 catch (Exception exc) {
360 JOptionPane.showMessageDialog(null,"Fehler
beim Speichern");
361 }
362 }
363 }
364
365
000 package
java2enterprise;
001 import java.io.IOException;
002 public class
KontoIOGrafisch {
003 public static void main(String[]
args) throws IOException,
ClassNotFoundException {
004 KontoVerwalten meinKonto = new KontoVerwalten("Donald
Duck",200.0,false);
006 new KontoAnzeige(meinKonto);
007 }
Kommentare
Kommentar veröffentlichen