Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在向建筑物中添加人员时,什么是指学校班级的最合适方式?_Java_Oop_Inheritance_Polymorphism_Abstract Class - Fatal编程技术网

Java 在向建筑物中添加人员时,什么是指学校班级的最合适方式?

Java 在向建筑物中添加人员时,什么是指学校班级的最合适方式?,java,oop,inheritance,polymorphism,abstract-class,Java,Oop,Inheritance,Polymorphism,Abstract Class,我被要求在计算机科学课的每一个练习中应用OOP概念。练习7向我们介绍了类和对象。我们必须创建一个名为Person的类,并对其进行编程,以从10人的一维数组中添加、删除和显示一个人。接下来是练习8和练习9,在这里我们学习了继承和封装,我们必须创建一个从Person继承的学生类,一个从Person继承的教师类,以及一个从Person继承的主类。我必须能够添加、删除和显示学生/教师的列表,当我完成这项工作时,效果非常好 我们的下一个任务是练习10,它向我们介绍了多态性和铸造。我们必须创建一个学校班级,

我被要求在计算机科学课的每一个练习中应用OOP概念。练习7向我们介绍了类和对象。我们必须创建一个名为Person的类,并对其进行编程,以从10人的一维数组中添加、删除和显示一个人。接下来是练习8和练习9,在这里我们学习了继承和封装,我们必须创建一个从Person继承的学生类,一个从Person继承的教师类,以及一个从Person继承的主类。我必须能够添加、删除和显示学生/教师的列表,当我完成这项工作时,效果非常好

我们的下一个任务是练习10,它向我们介绍了多态性和铸造。我们必须创建一个学校班级,该班级将有一个学校名称、地址和最多300人的名单。我必须设计一个addPersonToBuildingPerson方法,然后修改我以前的程序,以便在创建人员时将其添加到学校。我的程序主要方法应该只需要参考学校班级

在创建addPersonToBuilding方法时,我相信我会在people数组中添加student和teacher实例。我创建一个方法,将学生/教师添加到学校,并在这些方法中,将学生/教师添加到人员数组中。AddPersonToBuilding方法是指将学生/教师添加到学校的方法。每当用户选择在主方法中添加学生/教师时,将调用添加PersonBuilding的方法

公办班级学校扩大招生规模{ 私有字符串学名; 私有字符串地址; 私有字符串名称; 私立学校人员[]=新学校[300]; 公立学校{ this.schoolName=不可用; this.address=不可用; this.name=不可用; }//放学 公立学校字符串学校名称、字符串地址、字符串prinicpalName{ this.schoolName=学校名称; this.address=地址; this.name=prinicpalName; }//学校名称、地址的末尾 公立学校字符串学校名称、字符串地址、字符串prinicpalName、学校[]人{ this.schoolName=学校名称; this.address=地址; this.name=prinicpalName; 这个。人=人; }//学校名称、地址、人的末尾 //----包括访问私有数据的setter和getter方法-- //我不会把这个包括进去,因为这并不是我的问题 //我想每个人,包括我在内,都知道他们是怎样的人,知道他们在做什么 公共布尔addPersonToBuilding PersonCopy P{ 布尔personAdded=false; int指数=0; 回归人格化; }//艾德珀森大厦 //创建将学生添加到学校的方法 公共布尔值addStudentToSchool学生{ 布尔studentAdded=false; int指数=0; 返校进修; }//将学生添加到学校学生的结束 //创建向学校添加教师的方法 公共布尔值addTeacherToSchool教师{ boolean teacherAdded=false; int指数=0; 如果将教师添加到选择教师{ } 返回教师添加; }//将教师添加到选择教师的末尾
}//课后学校指定了Person的老师和学生,您创建了以下学校班级:

public School(){
ArrayList<Person> people = new ArrayList<Person>();

public void addPeople(Person p){
  people.add(p);
}

欢迎来到堆栈溢出!虽然我理解你只是在寻求帮助,而不是真正为你做家庭作业,但如果不违背本作业的目的,我们就无法回答这个问题。请复习你的课堂笔记,并自由回答这个问题,以便更具体地说明你遇到的困难。也请阅读:谢谢!我缩短了我的问题,删除了我正在进行头脑风暴并记下我的想法的便条。除此之外,我还可以如何改进我的上述问题,以使其他人无法达到我的任务目的?请将其大大缩短。我建议不要超过两段和20行代码。我甚至缩短了它并添加了一段代码。Stack Overflow是一个问答网站,而不是一个家庭作业写作服务。请不要给用户其他理由相信。谢谢。他并没有把作业发出去。他以前做得很好,在我看来,他被困在了一个特定的地方。正如你所看到的,我没有写他的家庭作业,因为我的代码甚至无法编译。他也遵循了这篇文章中关于如何提问家庭作业的建议:我其实是个女孩,哈哈。是的,我不仅发布了我的作业,而且我可以向你保证,我所说的大部分内容都没有包含在作业指导中。我从我的老师那里得到了澄清,根据我所做的和必须做的,我在我的问题中写下了上面的所有内容。我被困在如何开始这个问题上,特别是关于如何将一个人添加到建筑中。我确实列出了一些我认为在逻辑方面需要做的事情。 ..
public static void main(String[] args){

   School school = new School();
   Teacher t1 = new Teacher();
   Student s1 = new Student();

   school.addPeople(t1);
   school.addPeople(s1);

   //Polymorphism
   for(Person p: school.getPeople()){
       p.getName(); /* Here the function will be
                       called depending if its a Teacher or Student at runtime */
    }


}