1、设计一个用户类,该类有编号、姓名、性别属性,另外有一个教师类,继承用户类,教师类里具有属性教龄,方法上课,编写程序实现以上过程,并写出测试代码。(50分)
用户类(User):
属性:userID、userName、sex
教师类(Teacher):extends User
属性:teachingAge
方法:public String goClass()//学生上课方法
测试类(Test)://查询所有教师的姓名
public static List getAllUserName(List teachers){
//补全代码
}
//更新给定编号的教师姓名
public static List updateUserById(List teachers,String id){
//补全代码
}public static void main(String args[]){//部分代码
Teacher user1=new Teacher (*,*,*,*);
Teacher user2=new Teacher (*,*,*,*);
…………
//把用户加到动态数组中,请补全代码//调用方法getAllUserName( ),请补全代码
//调用方法updateUserById( ),请补全代码}
}
用户类(User):
属性:userID、userName、sex
教师类(Teacher):extends User
属性:teachingAge
方法:public String goClass()//学生上课方法
测试类(Test)://查询所有教师的姓名
public static List getAllUserName(List teachers){
//补全代码
}
//更新给定编号的教师姓名
public static List updateUserById(List teachers,String id){
//补全代码
}public static void main(String args[]){//部分代码
Teacher user1=new Teacher (*,*,*,*);
Teacher user2=new Teacher (*,*,*,*);
…………
//把用户加到动态数组中,请补全代码//调用方法getAllUserName( ),请补全代码
//调用方法updateUserById( ),请补全代码}
}
//查询所有教师的姓名
for(Teacher teacher:teachers){
System.out.println(teacher.getUserName());
}
//更新给定编号的教师姓名
for(int i = 0; i < teachers.size(); i++){
if(id != null && id.equals(teachers.get(i).getId())){
//更新操作
teachers.get(i).setUserName("张老师");
}
}//把用户加到动态数组中
CopyOnWriteArrayList<Teacher> teachers = new CopyOnWriteArrayList<>();
teachers.add(对象);
teachers.add(对象2);
...//调用方法getAllUserName( )
Teacher.getAllUserName(); // 静态方法 直接类名
//调用方法updateUserById( )
同上
public class User {
private String userID,userName,sex; /**
* @param userID
* @param userName
* @param sex
*/
public User(String userID, String userName, String sex) {
super();
this.userID = userID;
this.userName = userName;
this.sex = sex;
} public String getUserID() {
return userID;
} public void setUserID(String userID) {
this.userID = userID;
} public String getUserName() {
return userName;
} public void setUserName(String userName) {
this.userName = userName;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
} @Override
public String toString() {
return "User [userID=" + userID + ", userName=" + userName + ", sex=" + sex + "]";
}
}
public class Teacher extends User {
private String teachingAge; /**
* @param userID
* @param userName
* @param sex
* @param teachingAge
*/
public Teacher(String userID, String userName, String sex, String teachingAge) {
super(userID, userName, sex);
this.teachingAge = teachingAge;
} public String getTeachingAge() {
return teachingAge;
} public void setTeachingAge(String teachingAge) {
this.teachingAge = teachingAge;
}
public String goClass() {
return "Internet";
} @Override
public String toString() {
return "{userID=" + getUserID() + ", userName=" + getUserName() + ", sex=" + getSex() +", teachingAge=" + teachingAge+"}" ;
}}
import java.util.ArrayList;
import java.util.List;public class Test { public static void main(String[] args) {
// TODO Auto-generated method stub
Teacher user1=new Teacher("1", "zhangsan", "nan", "12");
Teacher user2=new Teacher("2", "lisi", "nan", "5");
List<Teacher> list=new ArrayList<Teacher>();
list.add(user1);
list.add(user2);
System.out.println(list);
System.out.println(getAllUserName(list));
System.out.println(updateUserById(list, "2")); }
public static List<String> getAllUserName(List<Teacher> teachers) {
List<String> list=new ArrayList<String>();
for(Teacher teacher:teachers) {
list.add(teacher.getUserName());
}
return list;
}
public static List<Teacher> updateUserById(List<Teacher> teachers,String id){
for(Teacher teacher:teachers) {
if(teacher.getUserID().equals(id)) {
teacher.setUserName("wangwu");
}
}
return teachers;
}}