Avatar billede tanis13 Nybegynder
11. november 2005 - 12:22 Der er 6 kommentarer og
1 løsning

Køre en funktion fra en klasse i en anden

Er det muligt fra en klasse at køre en funktion fra en anden klasse, hvor der skal indtastet forskellige ting ?

Jeg ved man kan bruge f.eks. "AndenKlasse.funktion();", men er det muligt at køre en sådan funktion, hvor man også skal indtaste værdier:
f.eks. "public void ny(int nr, String navn)" fra en anden funktion i en anden klasse. ?
Avatar billede mollevp Nybegynder
11. november 2005 - 12:31 #1
Du kan prøve følgende:

class A
{
public A()
{
}

public void print(String tekst)
{
    System.out.println("Txt: "+tekst);
}
}

class B
{
  public B()
  {
      A andenKlasse = new A();
      andenKlasse.print("test");
  }
}
Avatar billede tanis13 Nybegynder
11. november 2005 - 14:18 #2
Muligt du kan uddybe det noget bedre?
Hvad hvis fkt1 har flere værdier, "public void print(String tekst1, String tekst2, int nr) feks. ?

Hvordan skal man via class B få udfyldt tekst1, tekst2 og nr ?
Avatar billede stephanryer Nybegynder
11. november 2005 - 15:53 #3
static løsning:

public class MinMetodeKlasse{
      public static int beregnLoen(int antalPersoner, int loenPrPerson){
          int samletLoen = antalPersoner * loenPrPerson;
          return samletLoen;
      }
}
public class MinHovedKlasse(){
    public void minMetode(){
        int personer = 10;
        int loen = 200000;
        int samletLoen = MinMetodeKlasse.beregnLoen(personer,loen);
    }
}

Uden brug af static:

public class MinMetodeKlasse{
      public int beregnLoen(int antalPersoner, int loenPrPerson){
          int samletLoen = antalPersoner * loenPrPerson;
          return samletLoen;
      }
}
public class MinHovedKlasse(){
    public void minMetode(){
        MinMetodeKlasse minMetode = new MinMetodeKlasse();
        int personer = 10;
        int loen = 200000;
        int samletLoen = minMetode .beregnLoen(personer,loen);
    }
}
Avatar billede stephanryer Nybegynder
11. november 2005 - 15:58 #4
I dit tilfælde ville det måske se sådan her ud:

public class Kartotek{
  public void ny(int nr, String navn){
    //Gør noget med nr og navn her
  }
}
public class HovedKlasse(){
  public static void main(){
    Kartotek mitKartotek = new Kartotek();
    mitKartotek.ny(1,"Hans Petersen");
    mitKartotek.ny(2,"Lone Jensen");
    mitKartotek.ny(3,"Jens Sørensen");
  }
}
Avatar billede stephanryer Nybegynder
11. november 2005 - 16:00 #5
public static void main(String[] s){} som den egentlig hedder. Denne metode er den der køres når du starter programmet fra denne klasse. Du kan kalde mitKartotek.ny() fra en hvilken som helst anden klasse. Du skal bare starte med at oprette et bjekt af klassen Kartotek.
Avatar billede tanis13 Nybegynder
05. oktober 2011 - 11:33 #6
Hej eksperter.

Følger op på nogle af mine tidligere usvaret tråde, hvis i stadig abonnerer på disse, må i gerne smide et svar så i kan få point.

Mvh
Avatar billede tanis13 Nybegynder
13. oktober 2011 - 09:04 #7
Lukket.
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