Mittwoch lesson
This commit is contained in:
parent
e0efeb82ef
commit
8901dea11b
61 changed files with 663 additions and 0 deletions
7
Code/Steiner/paymentSystemWithInterfaces/.vscode/settings.json
vendored
Normal file
7
Code/Steiner/paymentSystemWithInterfaces/.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"java.project.sourcePaths": ["src"],
|
||||
"java.project.outputPath": "bin",
|
||||
"java.project.referencedLibraries": [
|
||||
"lib/**/*.jar"
|
||||
]
|
||||
}
|
18
Code/Steiner/paymentSystemWithInterfaces/README.md
Normal file
18
Code/Steiner/paymentSystemWithInterfaces/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
## Getting Started
|
||||
|
||||
Welcome to the VS Code Java world. Here is a guideline to help you get started to write Java code in Visual Studio Code.
|
||||
|
||||
## Folder Structure
|
||||
|
||||
The workspace contains two folders by default, where:
|
||||
|
||||
- `src`: the folder to maintain sources
|
||||
- `lib`: the folder to maintain dependencies
|
||||
|
||||
Meanwhile, the compiled output files will be generated in the `bin` folder by default.
|
||||
|
||||
> If you want to customize the folder structure, open `.vscode/settings.json` and update the related settings there.
|
||||
|
||||
## Dependency Management
|
||||
|
||||
The `JAVA PROJECTS` view allows you to manage your dependencies. More details can be found [here](https://github.com/microsoft/vscode-java-dependency#manage-dependencies).
|
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/App.class
Normal file
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/App.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/IPay.class
Normal file
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/IPay.class
Normal file
Binary file not shown.
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/PayPalPayment.class
Normal file
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/PayPalPayment.class
Normal file
Binary file not shown.
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/Payment.class
Normal file
BIN
Code/Steiner/paymentSystemWithInterfaces/bin/Payment.class
Normal file
Binary file not shown.
24
Code/Steiner/paymentSystemWithInterfaces/src/App.java
Normal file
24
Code/Steiner/paymentSystemWithInterfaces/src/App.java
Normal file
|
@ -0,0 +1,24 @@
|
|||
public class App {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
|
||||
Payment creditCard = new CreditCardPayment("1234-5678-9012-3456", "Max Mustermann");
|
||||
|
||||
Payment paypal = new PayPalPayment("max@example.com");
|
||||
|
||||
Payment bankTransfer = new BankTransferPayment("DE89 3704 0044 0532 0130 00");
|
||||
|
||||
processPayment(creditCard, 49.99);
|
||||
|
||||
processPayment(paypal, 19.99);
|
||||
|
||||
processPayment(bankTransfer, 99.99);
|
||||
|
||||
}
|
||||
|
||||
public static void processPayment(Payment payment, double amount) {
|
||||
payment.pay(amount);
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
public class BankTransferPayment extends Payment implements IPay {
|
||||
String securityNumber;
|
||||
|
||||
public BankTransferPayment(String securityNumber) {
|
||||
this.securityNumber = securityNumber;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pay(double amount) {
|
||||
System.out.println("Bezahlung von " + amount + " CHF mit Banktransfer " + securityNumber);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
public class CreditCardPayment extends Payment implements IPay {
|
||||
String number;
|
||||
String name;
|
||||
|
||||
public CreditCardPayment(String number, String name) {
|
||||
this.number = number;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pay(double amount) {
|
||||
System.out.println("Bezahlung von " + amount + " CHF mit Kreditkarte " + number + " von " + name);
|
||||
}
|
||||
}
|
3
Code/Steiner/paymentSystemWithInterfaces/src/IPay.java
Normal file
3
Code/Steiner/paymentSystemWithInterfaces/src/IPay.java
Normal file
|
@ -0,0 +1,3 @@
|
|||
public interface IPay {
|
||||
public void pay(double amount);
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
public class PayPalPayment extends Payment implements IPay {
|
||||
String mail;
|
||||
|
||||
public PayPalPayment(String mail) {
|
||||
this.mail = mail;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pay(double amount) {
|
||||
System.out.println("Bezahlung von " + amount + " CHF mit Kreditkarte " + mail);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
public abstract class Payment implements IPay {
|
||||
public abstract void pay(double amount);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue