資源簡介
java面向對象編程,編寫一Person類,Teacher類繼承Person類,Leader類繼承Person類,Student類繼承Person類,用動態地輸入,實現對各個對象的管理。
代碼片段和文件信息
import?java.io.*;
import?java.util.List;
import?java.util.ArrayList;
import?java.util.Collections;
class??Person{?????????????????????????????//定義人類
String?name;
String?sex;
int?age;
Person(String?nameString?sexint?age){
this.name=name;
this.sex=sex;
this.age=age;
}
}
??????????????????????????????????????????//定義學生類
class?Student?extends?Person?implements?Comparable{
String?ID;
float??Score;
Student(String?nameString?sexint?ageString?IDfloat?Score){
????super(namesexage);
this.ID=ID;
this.Score=Score;
}
public?int?compareTo(object?o){????????????//查找比較函數
return?(int)(Score-((Student)o).Score);
}
public?String?toString(){
return?“Student{“+“姓名=“+name+“,性別=“+sex+“,年齡=“+age+“,學號=“+ID+“,成績=“+Score+“}“;
}
}
?????????????????????????????????????????//定義教師類
class?Teacher?extends?Person?{
float??salary;
String?post;
Teacher(String?nameString?sexint?agefloat?salaryString?post){
????super(namesexage);
this.salary=salary;
this.post=post;
}
public?String?toString(){
return?“Teacher{“+“姓名=“+name+“,性別=“+sex+“,年齡“+age+“,工資=“+salary+“,職務=“+post+“}“;
}
}
class?Leader?extends?Person?{????????????//定義領導類
float??salary;
String?post;
Leader(String?nameString?sexint?agefloat?salaryString?post){
????super(namesexage);
this.salary=salary;
this.post=post;
}
public?String?toString(){
return?“Leader{“+“姓名=“+name+“,性別=“+sex+“,年齡=“+age+“,工資=“+salary+“,職務=“+post+“}“;
}
}
????????????????????????????????????????//按學生分數排序實現類
class?ScoreComparator?implements?java.util.Comparator?{
public?int?compare(object?o1object?o2){
Student?s1=(Student)o1;
Student?s2=(Student)o2;
return?(int)(s1.Score-s2.Score);
}
}
public?class?Manage?{??????????????????????????//管理類(主類)
public?static?void?main(String[]?args)?throws?java.io.IOException{
int?i;
System.out.println(“請輸入領導的個數:“);??????????//輸入領導的信息?????
BufferedReader?numl?=?new?BufferedReader(new?InputStreamReader(System.in));
int?ln=?Integer.parseInt(numl.readLine());
List?listl=new?ArrayList();???????????????????
for(i=0;i System.out.println(“請輸入第“+(i+1)+“個領導的信息:“);
System.out.println(“請輸入領導的姓名,性別,年齡,工資,職務:“);
BufferedReader?ss1?=?new?BufferedReader(new?InputStreamReader(System.in));??????????????
String?str1=ss1.readLine();
str1=str1+“\n“;
FileWriter?out=new?FileWriter(“C:\\ManageInfo.txt“true);//將輸入的內容保存到文本文檔中
out.write(str1);
out.close();
int?l1=str1.indexOf(“?“);???????????????????????//找出空格的位置
int?l2=str1.indexOf(“?“l1+1);
int?l3=str1.indexOf(“?“l2+1);
int?l4=str1.indexOf(“?“l3+1);
int?l=str1.indexOf(‘\n‘);
String?name=str1.substring(0l1);
String?sex=str1.substring(l1+1l2);
int????age=Integer.parseInt(str1.substring(l2+1l3));????????????????
float??salary=Float.parseFloat(str1.substring(l3+1l4));?
String?post=str1.substring(l4+1l);
listl.add(new?Leader(namesexagesalarypost));?//將對象添加入集合listl??
}
System.out.println(“請輸入老師的個數:“);????????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????6383??2008-11-12?16:55??Manage.java
?????文件????????195??2008-11-11?01:42??ManageInfo.txt
-----------?---------??----------?-----??----
?????????????????6578????????????????????2
- 上一篇:電話本(Java編寫的在控制臺上運行)
- 下一篇:java版多人聊天室
評論
共有 條評論