Avatar billede 3131 Nybegynder
08. juni 2003 - 02:07 Der er 7 kommentarer og
1 løsning

Java dannelse af klasser

Hej

Er der mon nogen derude der kan hjælpe mig igang med en opgave i java.

Den består af 2 ting

1. Der skal laves et system der kan definerer breve ud fra nogle kriterier.

2. Så skal der beregnes porto ud fra hvor brevet skal hen og udfra brevets vægt.
Avatar billede dash Nybegynder
08. juni 2003 - 02:43 #1
du kan evt modellere et brev og en porto-beregner.

Klassen brev skal have en konstruktor, der opretter et Brev med tilhørende værdier. Det kunne være modtager, adresse, postnummer, by, afsender og vægt.

Disse gemmes i tilstandsvariable - kan enten være public eller private (og så returneres af metoder)

Klassen Portoberegner skal tage et brev som argument. Dens metode skal blot aflæse brevets vægt og modtager-adresse og beregne (+ returnere) portoen.

Håber, det er hjælp nok. Ellers kan jeg godt gøre det mere specifikt.
Avatar billede 3131 Nybegynder
08. juni 2003 - 09:04 #2
Du må meget gerne gøre det mére specefikt, men først må jeg hellere nævne at det skal lave i BlueJ og jeg skal inddele brevene efter Standardbreve, Storbrev  og Maxibrev. De indeholder oplysningerne Længde, Bredde, Tykkelse, Vægt og i Maxibrev står der desuden Længde + bredde + tykkelse.

Jeg har så selv forsøgt at lave følgende klasse:
import java.util.*;
/**
* Letter information what kind of letter are we dealing with defined by length,
* width, thickness and weight.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Category
{
    // instance variables
   
    private String letter;
    private int length, width, weight;
    private double thickness;   
    private int x;

    /**
    * Constructor for objects of class Category
    */
    public Category()
   
Derfra kan jeg ikke komme videre.
Avatar billede dash Nybegynder
08. juni 2003 - 12:27 #3
skal du også bruge modtager-adresse for at regne porto ud?
Avatar billede 3131 Nybegynder
08. juni 2003 - 14:20 #4
Nej jeg skal bruge land og vægt for at beregne portoen
Avatar billede dash Nybegynder
10. juni 2003 - 00:34 #5
public class Brev {

private String name;
private String country;
private int length, width, weight;

public Brev(String name, String country, Int len...osv) {

this.name = name;
osv
}
public String getName() {
return name;
}
public int getHeight() {
return height;
}
osv...
}
Det er vel alt du behøver for at modellere brevet - med de oplsyninger du skal bruge.

Så kan du modellere en Portoberegner, der har en beregningsmetode, der tager et Brev med som argument.

public class Portoberegner {



public Portoberegner() {}

public beregnPorto(Brev b) {

String land = b.getCountry();
int weight = b.getWeight();
osv - træk alle oplsysninger ud...

put oplysningerne ind i din algortime for at beregne porto og returner resultatet. Det kan du evt hæfte på Brevet - bare udvid klassen med en int Porto

Var det nok eller....
Avatar billede 3072 Nybegynder
10. juni 2003 - 00:49 #6
Det er meget anderledes end det jeg har lavet i dag. Jeg har utrolig svært ved det her.

Jeg skal jo også have de forskellige brevtyper med.
Avatar billede 3072 Nybegynder
10. juni 2003 - 00:52 #7
Det du skriver her til 3131 kan jeg også bruge det i min opgave? Jeg har ellers lavet if-else sætninger som du nok kunne se i de koder jeg sendte.

Det du skriver er det så 2 forskellige klasser eller er det samlet i en?
Avatar billede dash Nybegynder
10. juni 2003 - 00:54 #8
der er brugt to forskellige klasser, men de kan sagtens samles i en som private klasser. Det er mere for princippets skyld, at de er delt. UML diagrammer og så'n :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester