Kan någon hjälpa mig med denna uppgift?
Skriv en klass som heter Frukt. Varje frukt ska ha en vikt mätt i gram (till exempel 230) och ett unikt nummer (till exempel 17). Försök komma på något sätt att automatiskt ge varje skapad frukt sitt eget unika nummer. Alla medlemsvariabler ska vara private-deklarerade.
Det finns tre sorters frukter: apelsiner, bananer och äpplen. Alla är de frukter, men varje apelsin har ett visst antal klyftor (till exempel 10) och varje banan har en krökningsradie mätt i centimeter (till exempel 92). Skapa klasser för dessa frukter. Alla medlemsvariabler ska vara private-deklarerade
Skriv en main-metod som skapar ett objekt vardera av de fyra olika klasserna ovan.
Skulle vara guld :)
Tack! :D
Posta hur din kod ser ut just nu. Jag tror inte att det är många på forumet som vill göra dina läxor åt dig, men däremot finns det nog folk som kan tänka sig att hjälpa till om du faktiskt har försökt själv.
Jag är ganska obegåvad när det gäller programmering....
import java.util.*;
class Fruit {
private static int amount = 0;
private int number = ++amount;
private int weight;
}
class Orange extends Fruit {
private int Klyftorantal;
}
class Banana extends Fruit {
private int krökningsradie;
}
class Apple extends Fruit {
private int krökningsradie;
}
public class fruit {
public static void main(String[] args) {
Fruit f = new Fruit();
Banana b = new Banana();
Orange a = new Orange();
Apple ä = new Apple();
}
}
prplxrMedlem sedan juni 2012582 inlägg Vad är felet, då? När jag tittar på din kod ser den ju okej ut, så vad är problemet?
Jag fick hjälp av en vänn på skype, Tänkte bara se om det var något fel på den
tack :))
Ok, några problem.
Undvik helst att använda åäö i variabelnamn. Du kan göra det, men det kan enkelt bli fel när man kompilerar i vissa miljöer.
Du har två deklarationer för klassen Fruit, den ena dessutom skriven med liten bokstav. (Klassnamn bör alltid börja med stor bokstav. Flytta in main i den första deklarationen så du bara har en deklaration av klassen. Saker som inte är klasser bör på samma sätt börja med liten bokstav, men däremot kan man använda storbokstave om ett variabelnamn innehåller fler aord. (Hellre klyftorAntal än Klyftorantal med andra ord.)
I ditt exempel hade även äpplet en krökningsradie.
Importen av java.util.* är just i detta fall onödig.
Din metod att ge varje klass ett unikt id får godkänt, även om man inte skulle göra så "på riktigt".
Så till slut får du följande kod:
public class Fruit {
private static int amount = 0;
private int number = ++amount;
private int weight;
public static void main(String[] args) {
Fruit f = new Fruit();
Banana b = new Banana();
Orange a = new Orange();
Apple ap = new Apple();
}
}
class Orange extends Fruit {
private int klyftorAntal;
}
class Banana extends Fruit {
private int krokningsRadie;
}
class Apple extends Fruit {
}
Sen kan det förstås vara en bra idé att ge de klasser som har specialvärden en egen konstruktor för att sätta just de värdena.
public class Fruit {
private static int amount = 0;
private int number = ++amount;
private int weight;
public static void main(String[] args) {
Fruit f = new Fruit();
Banana b = new Banana(92);
Orange a = new Orange(12);
Apple ap = new Apple();
}
}
class Orange extends Fruit {
private int klyftorAntal;
Orange(int klyftorAntal){
this.klyftorAntal = klyftorAntal;
}
}
class Banana extends Fruit {
private int krokningsRadie;
Banana(int krokningsRadie){
this.krokningsRadie = krokningsRadie;
}
}
class Apple extends Fruit {
}
aasahMedlem sedan mars 20034 471 inlägg
kaksmeten skrev:
Jag fick hjälp av en vänn på skype, Tänkte bara se om det var något fel på den
tack :))
Mao du har inte försökt själv...