Quantcast

Java - Pomoć za rešavanje zadatka [HITNO]

NixAAAA

Početnik
Poruka
3
Molim vas moze li mi neko pomoci da uradim ovo, stvarno mi je hitno a bas sam zaglavio.

Assignment - Objektno orijentisano programiranje u Javi

Zamislite da je potrebno da modelujete informacioni sistem jedne trgovine. Potrebno je da napravite klasu Product koja će predstavljati osnovu za dalje nasleđivanje i neće se moći instancirati. Ovu klasu nasleđuju dve klase koje predstavljaju konkretne grupe proizvoda: Chocolate i Wine. Ova hijerarhija prikazana grafikom izgleda ovako:


Svaki proizvod poseduje određene osobine:
  • naziv proizvoda,
  • bar-kod,
  • osnovnu cenu,
  • porez.

Takođe, svaki proizvod poseduje i metodu za računanje cene, koja se izračunava tako što se osnovna cena uveća za iznos poreza. Porez (PDV) za svaki proizvod je 20% i ovo je podatak koji je konstantan i neće se menjati.
Ipak, proizvodi iz grupe vina, imaju i dodatni porez, pošto spadaju u grupu alkoholnih pića i on iznosi 10% od cene već uvećane za iznos PDV-a. I ovo je podatak koji je konstantan i neće se menjati.
Zbog ovoga je potrebno redefinisati metodu za računanje cene samo u okviru klase Wine.
Pored ovoga, klasa Wine treba da poseduje atribut koji definiše zapreminu boce, a klasa Chocolate atribut koji definiše težinu.
U klasama Chocolate i Wine, potrebno je napraviti parametrizovane konstruktore za kreiranje objekata.
Potrebno je, takođe, u svim klasama redefinisati metodu toString za prikaz informacija o objektu.
Na kraju je potrebno u test klasi kreirati po jedan objekat ovih klasa i na izlazu prikazati informacije o proizvodima, kao i iznos finalne cene definisane kroz metodu za izračunavanje cene. Za osnovnu cenu uzeti proizvoljan iznos.
Visina ocene zavisiće od primene objektno orijentisanih principa za modelovanje ovih klasa.
 

sreckom92

Zainteresovan član
Poruka
256
Pozdrav!

Smatram sebe Java pocetnikom, pa sam probao da uradim ovaj zadatak na svoju ruku.
Relativno brzo sam uradio, sto moze da znaci dve stvari:
-Otprilike da sam savladao i razumeo to sto se trazi, ili:
-Nesto sam lose uradio

I verujem da je to drugo slucaj.
Posto je ova tema bila"hitna", cenim da je nebitno ako postavim kod.
Ipak, znacilo bi meni ako bi mogao dobiti neki savet. :)

Da postavim kod?
Hvala unapred!
 

NixAAAA

Početnik
Poruka
3
Pozdrav!

Smatram sebe Java pocetnikom, pa sam probao da uradim ovaj zadatak na svoju ruku.
Relativno brzo sam uradio, sto moze da znaci dve stvari:
-Otprilike da sam savladao i razumeo to sto se trazi, ili:
-Nesto sam lose uradio

I verujem da je to drugo slucaj.
Posto je ova tema bila"hitna", cenim da je nebitno ako postavim kod.
Ipak, znacilo bi meni ako bi mogao dobiti neki savet. :)

Da postavim kod?
Hvala unapred!
Bilo bih super kada bih postavio :D
 

sreckom92

Zainteresovan član
Poruka
256
Bilo bih super kada bih postavio :D
Evo kod, ali ne ocekuj da je to bas najbolje resenje. Ne ocekuj ni da je ispravno resenje. :D

Java:
public class Product
{
    String nazivProizvoda;
    int barKod;
    double osnovnaCena;
    int porez = 20;
}

public class Wine extends Product
{
    double zapreminaBoce;
    double konacnaCena;

    public Wine(String nazivProizvoda, int barKod, double osnovnaCena, double zapreminaBoce)
    {
        super();
        this.nazivProizvoda = nazivProizvoda;
        this.barKod = barKod;
        this.osnovnaCena = osnovnaCena;
        this.zapreminaBoce = zapreminaBoce;
    }
    
    public void izracunajCenu(Wine newWine)
    {
        konacnaCena = newWine.osnovnaCena + ((newWine.porez * newWine.osnovnaCena ) / 100);
    }

    @Override
    public String toString()
    {
        return "Vino " + nazivProizvoda + " Zapremina Boce: " + zapreminaBoce + " l, " + "Bar Kod: " + barKod
                + ", Cena: " + osnovnaCena + " dinara, PDV: " + porez + "%";
    }
    
}

public class Chocolate extends Product
{
    double tezina;
    double konacnaCena;

    public Chocolate(String nazivProizvoda, int barKod, double osnovnaCena, double tezina)
    {
        super();
        this.nazivProizvoda = nazivProizvoda;
        this.barKod = barKod;
        this.osnovnaCena = osnovnaCena;
        this.tezina = tezina;
    }
    
    public void izracunajCenu(Chocolate newChocolate)
    {
        konacnaCena = newChocolate.osnovnaCena + ((newChocolate.porez * newChocolate.osnovnaCena ) / 100);
    }

    @Override
    public String toString()
    {
        return "Cokolada " + nazivProizvoda + " Tezina: " + tezina + " grama, " + "Bar Kod: " + barKod
                + ", Cena: " + osnovnaCena + " dinara, PDV: " + porez + "%";
    }
    
}


public class Main {

    public static void main(String[] args)
    {
        Wine wine1 = new Wine("Vranac", 101010, 550, 2);
        wine1.izracunajCenu(wine1);
        
        Chocolate choco1 = new Chocolate("Najlepse Zelje", 100001, 100, 100);
        choco1.izracunajCenu(choco1);
        
        System.out.println(wine1.toString());
        System.out.println("Konacna cena vina " + wine1.nazivProizvoda +
                " je: " +  wine1.konacnaCena + " dinara");
        
        System.out.println("");
        
        System.out.println(choco1.toString());
        System.out.println("Konacna cena cokolade " + choco1.nazivProizvoda +
                " je: " +  choco1.konacnaCena + " dinara");

    }

}
Mozda ce ti pomoci da shvatis kako bi (mozda) trebalo da izgleda. Ali ne oslanjaj se bas 100%.
 

cronnin

Domaćin
Moderator
Poruka
3.007
Хм, имам овај нови Edge, мада га скоро никад нисам пробао. На нету има доста аплета из света физике и разних других симулација, које су рађене у Java, а више не раде. Остале су ове у Flash-u, колико видим. Хоће ли бар то опстати?

Него, за шта се онда Java данас претежно користи?
 

bmaxa

Aktivan član
Poruka
1.368
Можда дигресија, али да ли је Јава пукла или пред издисајем?
Мени ни један аплет не ради више ни на једном претраживачу.
Apleti se smatraju bezbednosnim rizikom. U proslosti mal mal pa neki exploit izadje. U svakom slucaju Applet ili jos gore ActiveX je stvar proslosti.
 

MisliM_StvaRnO

Primećen član
Poruka
643
Mesate babe i zabe.Covek je pitao u vezi java programiranja.
Java je programski jezik,jako popularan danas i godinama unazad,trenutno je na drugom mestu na GitHubu i na trecem mestu na StackOverflowu.

Java se koristi za programiranje android aplikacija najvise a potom za sve ostalo.Za sada Java ne ide nigde.

Inace,covek je dobio odgovor,pa moze da prodje ispit na tudji rad,te sutra radi u McDonald-u jer Javu nije naucio vec su mu drugi radili zadatke.
 
Top