Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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 我应该在if语句中放入什么来获取子类对象元素? publicstaticarraylistcreatestudents() { ArrayList学生; 学生=新数组列表(); 添加(新本科生(“Kvin”,15,'M',4)); 添加(新毕业学生(“Kaley”,24,'F',“专家系统”); 添加(新本科生(“迈克”,25,'M',2)); 添加(新毕业生(“Bob”,20,'F',“极限编程”); 留学生; } 公共静态学生(ArrayList学生) { 整数计数; 学生; System.out.println(“\n\n研究生名单:\n”); 对于(计数=0;计数_Java - Fatal编程技术网

Java 我应该在if语句中放入什么来获取子类对象元素? publicstaticarraylistcreatestudents() { ArrayList学生; 学生=新数组列表(); 添加(新本科生(“Kvin”,15,'M',4)); 添加(新毕业学生(“Kaley”,24,'F',“专家系统”); 添加(新本科生(“迈克”,25,'M',2)); 添加(新毕业生(“Bob”,20,'F',“极限编程”); 留学生; } 公共静态学生(ArrayList学生) { 整数计数; 学生; System.out.println(“\n\n研究生名单:\n”); 对于(计数=0;计数

Java 我应该在if语句中放入什么来获取子类对象元素? publicstaticarraylistcreatestudents() { ArrayList学生; 学生=新数组列表(); 添加(新本科生(“Kvin”,15,'M',4)); 添加(新毕业学生(“Kaley”,24,'F',“专家系统”); 添加(新本科生(“迈克”,25,'M',2)); 添加(新毕业生(“Bob”,20,'F',“极限编程”); 留学生; } 公共静态学生(ArrayList学生) { 整数计数; 学生; System.out.println(“\n\n研究生名单:\n”); 对于(计数=0;计数,java,Java,您想检查传入的类是否是研究生或本科生的实例。它将返回布尔值 if(student instanceof (GraduateStudent)) instanceof检查它是否是该类的成员或继承自该类。所以该学生将是毕业生和学生的instanceof 更新 正如注释中正确提到的,向每个实例添加一个showInfo()类是另一种方法。您可以使用instanceOf操作符 if (student instanceof GraduateStudent) 您应该做的是实现一个showInfo()方法由每

您想检查传入的类是否是研究生或本科生的实例。它将返回布尔值

if(student instanceof (GraduateStudent))
instanceof检查它是否是该类的成员或继承自该类。所以该学生将是毕业生和学生的instanceof

更新
正如注释中正确提到的,向每个实例添加一个
showInfo()
类是另一种方法。

您可以使用
instanceOf
操作符

if (student instanceof GraduateStudent)

您应该做的是实现一个
showInfo()
方法由每个子类重写。对于所有回答的人:请确保编写解决方案,而不是最快的方法,注意建议的解决方案会导致设计问题。@VisionarySoftwareSolutions@AMR是对的,我给了我2美分。有趣的是,所有答案都是错误的,instanceof都是小写的。annnn向上投票lol#trolledAgainHey伙计们。与其挑剔现有的答案,不如写下自己的答案,用OP可以理解的术语来解决您的问题。请记住,99%的可能性是他是Java初学者,不会理解设计概念/最佳实践。还要记住“最佳实践”设计可能不适用于100行左右的应用程序,这些应用程序将被编码、测试、提交……并且再也不会被触碰。@user2138255太好了。一般来说,如果您找到解决问题的答案,建议您向上投票并接受它(答案左侧的向上箭头和复选标记)
if (student instanceof GraduateStudent)
 if(student instanceOf GraduateStudent)