Avatar billede nanders Nybegynder
14. maj 2009 - 10:22 Der er 6 kommentarer og
1 løsning

Simple eksterne metodekald

Kære eksperter,

Fra en klasse main:

public class Main
{
    private Plus sum;
    int a=1;
    int b=7;
    public Plus()
    {
        sum.plusit(a,b);
        System.out.println(sum);
    } 
}

Ønsker jeg at kalde en klasse/objekt?, der kan returnere summen af to variable. Det er vigtigt, at denne klasse kan tage variable af alle navne og at metoderne er i hver deres klasse/objekter?, da det er tusindvis af ens regnestykker, der skal udføres i den ene af dem.



class Plus
{
    int sum;
    public int plusit(int a, int b)
    {
              sum=a+b;
              return sum;
    }
}

Det er i BlueJ jeg arbejder, og der skal være en punkteret linje mellem de to programstumper.

Hvordan får jeg de to ovenstående programstumper til at arbejde sammen så at jeg kan få printet summen af de to heltal ud ovre i main?
Avatar billede odsgaard Praktikant
14. maj 2009 - 14:21 #1
Du har din beregner-klasse:

public class Beregn{
  //Metode til at lægge to tal sammen
  public static int sum(int a, int b){
    return a + b;
  }
}

Når du så vil lave en udregning fra dit hovedprogram, så kan du kalde sum-metoden således:

int tal1 = 2;
int tal2 = 3;

int resultat = Beregn.sum(tal1,tal2);
System.out.println("Resultat: " + resultat);

Hvis du ikke ønsker, at sum() metoden i Beregn klassen skal være statisk, så kan du kalde den på følgende måde:

Beregn b = new Beregn();
int resultat = b.sum(tal1, tal2);
       
Hilsen
Brian
Avatar billede nanders Nybegynder
25. maj 2009 - 13:07 #2
Tak for kommentarerne, som har ledt mig til at konkretisere mit spm.

Jeg har to programmer; et hovedprogram og et beregningsprogram. Det er meget vigtigt, at det er delt op i to programmer.

I hovedprogrammet holder jeg styr på variable og i beregningsprogrammet lægges tal sammen.

Det er meget vigtigt, at Beregn programmmet, der ikke giver compile-fejl, bare tager de 3 tal, jeg sender derover fra hovedprogrammet.

Hovedprogrammet giver compile fejl.

Kan du se hvor fejlen er?

public class Hovedprogram
{
   
    public Hovedprogram()
    {
        double a=0.76;
        double b=10.3;
        double c=34.234;
        double d=4;
        double e=67;
        double f=5.3;
        double p1=100;
        double p2=100;
    }

    double p1 = Beregn.sum(a,b,c);
    double p2 = Beregn.sum(d,e,f);
   
    System.out.println(p1);
    System.out.println(p2);
}


public class Beregn
{
   
    public static double sum(double i,double j,double k)
    {
      return i+j+k;
    }

}
Avatar billede arne_v Ekspert
25. maj 2009 - 13:38 #3
Hovedprogrammet giver compile fejl fordi du har kode som ligger udenfor metoder (inkl. constructor).
Avatar billede nanders Nybegynder
27. maj 2009 - 10:06 #4
Tak, det virkede
Avatar billede arne_v Ekspert
04. juli 2009 - 03:38 #5
Skal vi have afsluttet pænt her ?
Avatar billede nanders Nybegynder
14. april 2010 - 14:43 #6
Ja selvfølgelig.

Undskyld.

Smid et tomt svar og du bliver krediteret.

nanders
Avatar billede arne_v Ekspert
14. april 2010 - 15:08 #7
svar
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
Kategori
Kurser inden for grundlæggende programmering

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