2011-01-04 3 views
3

В настоящее время у меня есть два класса. класс класса и класс школы. Я хотел бы написать метод в классе School, чтобы вызвать public void setTeacherName (String newTeacherName) из класса класса.Как вызвать метод в другом классе в Java?

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 
} 

ответ

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

Попробуйте это:

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

Вы должны использовать имена ваших классов. После этого, что делать это в школьном классе,

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

Также я рекомендую вам использовать какое-то IDE, такие как затмение, которое может помочь вам с вашим кодом, например, методы получения и установки для вас. Пример: щелкните правой кнопкой мыши Источник -> Создать методы получения и установки

+0

Это не реально ответить на этот вопрос. Возможно, это должен быть комментарий к исходному вопросу вместо ответа? Тем не менее, это не только правильные советы, но и полезный совет. – jaydel

2

в школе,

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

BTW, использовать Pascal Case для имен классов. Кроме того, я бы предложил Map<String, classroom>, чтобы сопоставить имя класса в классе.

Затем, если вы используете мое предложение, это будет работать

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

Вместо того, чтобы использовать это в текущем классе setClassRoomName("aClassName"); вы должны использовать classroom.setClassRoomName("aClassName");

Вы должны добавить класс и при пункт как

yourClassNameWhereTheMethodIs.theMethodsName(); 

Я знаю, что это очень поздно ответ, но если кто-то начинает обучение Java и случайно видит этот пост он знает WHA t сделать.

0

Попробуйте this.I думаю, что это будет работать:

public void addTeacherToClassRoom(classroom myClassRoom, String TeacherName) 
{ 
    myClassRoom.setTeacherName(TeacherName); 
} 
Смежные вопросы