2011-01-04 7 views
3

Derzeit habe ich zwei Klassen. ein Klassenraum und eine Schulklasse. Ich möchte eine Methode in der School-Klasse schreiben, um public void setTeacherName (String newTeacherName) von der Klasse classroom aufzurufen.Wie ruft man eine Methode in einer anderen Klasse in Java auf?

classroom.java

public class classroom { 
    private String classRoomName; 
    private String teacherName; 

    public void setClassRoomName(String newClassRoomName) { 
     classRoomName = newClassRoomName; 

    } 

    public String returnClassRoomName() { 
     return classRoomName; 
    } 

    public void setTeacherName(String newTeacherName) { 
     teacherName = newTeacherName; 

    } 

    public String returnTeacherName() { 
     return teacherName; 
    } 
} 

School.java

import java.util.ArrayList; 

public class School { 
    private ArrayList<classroom> classrooms; 
    private String classRoomName; 
    private String teacherName; 

    public School() { 
     classrooms = new ArrayList<classroom>(); 
    } 

    public void addClassRoom(classroom newClassRoom, String theClassRoomName) { 
     classrooms.add(newClassRoom); 
     classRoomName = theClassRoomName; 
    } 

    // how to write a method to add a teacher to the classroom by using the 
    // classroom parameter 
    // and the teachers name 
} 

Antwort

3
class A{ 
    public void methodA(){ 
    new B().methodB(); 
    //or 
    B.methodB1(); 
    } 
} 

class B{ 
    //instance method 
    public void methodB(){ 
    } 
    //static method 
    public static void methodB1(){ 
    } 
} 
6

Versuchen Sie folgendes:

public void addTeacherToClassRoom(classroom myClassRoom, String TeacherName) 
{ 
    myClassRoom.setTeacherName(TeacherName); 
} 
9

Sie sollten die Namen Ihrer Klassen groß schreiben. das tun dies in Ihrer Schulklasse nach tun,

Classroom cls = new Classroom(); 
cls.setTeacherName(newTeacherName); 

Auch würde ich empfehlen, Sie irgendeine Art von IDE wie Eclipse, die Sie mit Ihrem Code zum Beispiel helfen können, erzeugen Getter und Setter für Sie. Ex: Recht Quelle klicken -> Generieren Getter und Setter

+0

Dies ist nicht wirklich die Frage zu beantworten. Vielleicht sollte es sich um eine Antwort auf die ursprüngliche Frage anstatt um eine Antwort handeln? Es ist aber nicht nur ein guter Rat, sondern auch ein guter Rat. – jaydel

2

in Schule,

public void addTeacherName(classroom classroom, String teacherName) { 
    classroom.setTeacherName(teacherName); 
} 

BTW verwenden Pascal Fall für Klassennamen. Außerdem würde ich eine Map<String, classroom> vorschlagen, um einen Klassenzimmernamen einem Klassenzimmer zuzuordnen.

Dann, wenn Sie meinen Vorschlag verwenden, würde dies

arbeiten
public void addTeacherName(String className, String teacherName) { 
    classrooms.get(className).setTeacherName(teacherName); 
} 
0

Statt dies in der aktuellen Klasse mit setClassRoomName("aClassName"); Sie classroom.setClassRoomName("aClassName");

zu verwenden, haben Sie haben die Klasse hinzufügen und bei einer Punkt wie

yourClassNameWhereTheMethodIs.theMethodsName(); 

weiß, dass ich es wirklich spät Antwort ist, aber wenn jemand Java beginnt das Lernen und sieht zufällig diesen Beitrag er weiß, wha t zu tun.

0

Versuchen this.I denke, es würde funktionieren:

public void addTeacherToClassRoom(classroom myClassRoom, String TeacherName) 
{ 
    myClassRoom.setTeacherName(TeacherName); 
} 
Verwandte Themen