以下是使用Java语言编写的代码:``` java.util.*;class { id; name;int ;int math;int ;int ;( id, name, int , int math, int ) {this.id = id;this.name = name;this. = ;this.math = math;this. = ;this. = + math + ;} () { id + " " + name + " " + + " " + math + " " + + " " + ;}}class {int ;( id, name, int , int math, int , int ) {super(id, name, , math, );this. = ;this. += ;} () { super.() + " " + ;}}class {int ;( id, name, int , int math, int , int ) {super(id, name, , math, );this. = ;this. += ;} () { super.() + " " + ;}}class rator { int ( s1, s2) {if (s1. != s2.) { s2. - s1.;} else if (s1. != s2.) { s2. - s1.;} else { (s2.id);}}}class { int ( s1, s2) {if (s1. != s2.) { s2. - s1.;} else if (s1. != s2.) { s2. - s1.;} else { (s2.id);}}} class { void main([] args) {List = new ();.add(new ("1001", "张三", 90, 80, 70));.add(new ("1002", "李四", 80, 90, 70));.add(new ("1003", "王五", 70, 80, 90));.add(new ("2001", "赵六", 90, 80, 70, 85));.add(new ("2002", "钱七", 80, 90, 70, 90));.add(new ("2003", "孙八", 70, 80, 90, 80));.add(new ("3001", "周九", 90, 80, 70, 95));.add(new ("3002", "吴十", 80, 90, 70, 90));.add(new ("3003", "郑十一", 70, 80, 90, 85));.sort(, new () { int ( s1, s2) {if (s1. != s2.) { s2. - s1.;} else { (s2.id);}}});for ( : ) {.out.();}}}```在这个程序中文史综合题是什么专业考的,我们定义了一个 类来表示普通的高考生文史综合题是什么专业考的,还定义了 和 类来表示艺术生和体育生。
这些类都继承自 类,因为它们都有一些共同的属性和方法。我们还定义了两个比较器类 rator 和 ,用于比较艺术生和体育生的总分和专业课成绩。这些比较器类实现了 接口,可以用于排序。在 main 函数中,我们创建了一组不同类别的高考生对象,并将它们存储在一个 List 中。然后,我们使用 .sort 方法对这个 List 进行排序,按照总分由高到低的顺序输出考生信息。对于艺术生和体育生,我们使用自定义的比较器类来排序,以满足题目要求。最后,我们遍历排序后的 List,输出每个考生的信息。