Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
frievoe97 committed Jul 23, 2023
2 parents 9168a46 + 7f8f158 commit 8ff6f8e
Show file tree
Hide file tree
Showing 17 changed files with 179 additions and 0 deletions.
8 changes: 8 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/AsusGpu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package abstractFactoryPatternCompanies;

public class AsusGpu implements Gpu{
@Override
public void assemble() {
//How to assemble ASUS Gpu
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package abstractFactoryPatternCompanies;

public class AsusManufacturer extends Company{
@Override
public Gpu createGpu() {
return new AsusGpu();
}

@Override
public Monitor createMonitor() {
return new AsusMonitor();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package abstractFactoryPatternCompanies;

public class AsusMonitor implements Monitor{
@Override
public void assemble() {
//How to assemble MSI Monitor
}
}
6 changes: 6 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/Company.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package abstractFactoryPatternCompanies;

public abstract class Company {
public abstract Gpu createGpu();
public abstract Monitor createMonitor();
}
5 changes: 5 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/Gpu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package abstractFactoryPatternCompanies;

public interface Gpu {
void assemble();
}
14 changes: 14 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package abstractFactoryPatternCompanies;

public class Main {
//Siehe: https://www.youtube.com/watch?v=QNpwWkdFvgQ
public static void main(String[] args) {
Company msi = new MsiManufacturer();
Gpu msiGpu = msi.createGpu();
Monitor msiMonitor = msi.createMonitor();

Company asus = new AsusManufacturer();
Gpu asusGpu = asus.createGpu();
Monitor asusMonitor = asus.createMonitor();
}
}
5 changes: 5 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/Monitor.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package abstractFactoryPatternCompanies;

public interface Monitor {
void assemble();
}
8 changes: 8 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/MsiGpu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package abstractFactoryPatternCompanies;

public class MsiGpu implements Gpu{
@Override
public void assemble() {
//How to assemble MsiGPU
}
}
13 changes: 13 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/MsiManufacturer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package abstractFactoryPatternCompanies;

public class MsiManufacturer extends Company{
@Override
public Gpu createGpu() {
return new MsiGpu();
}

@Override
public Monitor createMonitor() {
return new MsiMonitor();
}
}
8 changes: 8 additions & 0 deletions src/main/java/abstractFactoryPatternCompanies/MsiMonitor.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package abstractFactoryPatternCompanies;

public class MsiMonitor implements Monitor{
@Override
public void assemble() {
//How to assemble MSI Monitor
}
}
27 changes: 27 additions & 0 deletions src/main/java/collections/ArrayList.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package collections;

import java.util.LinkedList;

public class ArrayList {

private static void printArrayList(java.util.ArrayList<String> arrayList){
for (Object element : arrayList) {
System.out.println(element);
}
}
public static void main(String[] args) {
java.util.ArrayList<String> arrayList = new java.util.ArrayList<>();
LinkedList linkedList = new LinkedList();

arrayList.add("a");
arrayList.add("b");
arrayList.add("c");

printArrayList(arrayList);

arrayList.remove("b");
arrayList.remove("c");

printArrayList(arrayList);
}
}
11 changes: 11 additions & 0 deletions src/main/java/templateMethodBurger/BeefBurger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package templateMethodBurger;

public class BeefBurger implements Burger{

//Implementation der Methode aus dem Interface
@Override
public void prepare() {
//prepare beef
//burger code
}
}
10 changes: 10 additions & 0 deletions src/main/java/templateMethodBurger/BeefBurgerRestaurant.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package templateMethodBurger;

public class BeefBurgerRestaurant extends Restaurant{

//Implementation der abstrakten Methode aus dem Restaurant
@Override
public Burger createBurger() {
return new BeefBurger();
}
}
7 changes: 7 additions & 0 deletions src/main/java/templateMethodBurger/Burger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package templateMethodBurger;

public interface Burger {

//Methode zum herstellen eines Burgers
void prepare();
}
15 changes: 15 additions & 0 deletions src/main/java/templateMethodBurger/Restaurant.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package templateMethodBurger;
//Siehe: https://www.youtube.com/watch?v=EdFq_JIThqM
public abstract class Restaurant {

//Nicht abstrakte Methode, welche abstrakte Methode verwendet
public Burger orderBurger(){
//Verwendung der abstrakten methode
Burger burger = createBurger();
burger.prepare();
return burger;
}

//Deklarierung der abstrakten Methode
public abstract Burger createBurger();
}
11 changes: 11 additions & 0 deletions src/main/java/templateMethodBurger/VeggieBurger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package templateMethodBurger;

public class VeggieBurger implements Burger{

//Implementation der Methode aus dem Interface
@Override
public void prepare() {
//prepare veggie
//burger code
}
}
10 changes: 10 additions & 0 deletions src/main/java/templateMethodBurger/VeggieBurgerRestaurant.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package templateMethodBurger;

public class VeggieBurgerRestaurant extends Restaurant{

//Implementation der abstrakten Methode aus dem Restaurant
@Override
public Burger createBurger() {
return new VeggieBurger();
}
}

0 comments on commit 8ff6f8e

Please sign in to comment.