Aktywne Wpisy
![cadec](https://wykop.pl/cdn/c3397992/cadec_Vg7jfg7O4r,q60.jpg)
cadec +73
#norwegia #emigracja
Mirki jesteśmy z dziewczyną w Norwegii w Stavanger i wylądowaliśmy w pracy w polu, praca od 7 do 20 naprawdę ciężka praca w której jeszcze jeden Polak pospieszą drugiego nie wiadomo po co, długo nie wytrzymamy, może ktoś na miejscu miałby jakąś inne prace która mogły polecić/zaproponowac z noclegiem. Pozdrawiamy
Mirki jesteśmy z dziewczyną w Norwegii w Stavanger i wylądowaliśmy w pracy w polu, praca od 7 do 20 naprawdę ciężka praca w której jeszcze jeden Polak pospieszą drugiego nie wiadomo po co, długo nie wytrzymamy, może ktoś na miejscu miałby jakąś inne prace która mogły polecić/zaproponowac z noclegiem. Pozdrawiamy
![ForTravelSayYes](https://wykop.pl/cdn/c0834752/ecdd831ae63506c73b669fde8a01fd9eb83e942ed148fc414f647521e2dfb7ac,q60.jpg)
ForTravelSayYes +362
Pizza ma listę składników, które są obiektami implementującymi interfejs Addition, i chciałbym, abym mógł dekorować pizzę każdym składnikiem, czyli coś w stylu:
public class Ham implements Addition extends AdditionDecorator
Ma to sens?
#java #programowanie
private List listAddition;
No to już masz zrobione, że każdym składnikiem można to o co chodzi?
Pizza pizza = new CheesePizza(list);
Pizza pizza = new Ham(pizza);
I z tego powinna wyjść pizza serowa z dodatkową szynką. I zastanawiam się, czy takie rozwiązanie jest dobre czy może coś za bardzo przekombinowuję.
Komentarz usunięty przez autora
Ten fragment kodu jest nieprawidłowy, redefiniujesz zmienne. Zmienna o nazwie pizza jest już utworzona.
Powiedziałem
powinno być:
Pizza pizza = new CheesePizza(); //bez tego list, już nie wazne to
pizza = new Ham(pizza);
pizza.add(new Ham())
. Skoro chcesz w ten sposób dodawać składniki to może jakiś Builder?Teraz jest błąd semantyczny.
Pizza pizza = new CheesePizza(); <- tworzysz zmienną typu pizza przechowującą obiekt typu CheesePizza. To jest ok
pizza = new Ham(pizza); <- nadpisujesz zawartość, więc CheesePizza jest usuwana a w jej miejsce wstawiany
Pizza myPizza = PizzaFactory.createPizza(CHEESE_PIZZA).withToppings(new Ham(), new Mushrooms(), new Pepperoni());
Komentarz usunięty przez autora
Jeżeli masz to tak zrobione to nie możesz przypisać obiektu typu Ham do zmiennej typu Pizza
@Philopolemus_Fronius: klasa Ham miałaby raczej wygladać tak:
//AdditionDecorator dziedziczy z pizzy
public class Ham extends AdditionDecorator implements Addition {
Pizza pizza;
public Ham(Pizza pizza) { this.pizza =
Możesz zrobić np tak.
Pizza pizza = new CheesePizza(new HamPizza())