1. 程式人生 > >實驗7:Student類繼承Person類,並增加查找,統計功能

實驗7:Student類繼承Person類,並增加查找,統計功能

如果 河南 初始 ati 源代碼 覆蓋 num ade div

技術分享圖片

源代碼如下:

  1 package Students;
  2 public class Person
  3     {   
  4         public  String name;
  5         public  String birthday;
  6         public  String province,city;
  7         public int count;
  8         public Person(String nam,String birthda,String provinc,String cit,int
n) 9 { 10 name=nam;birthday=birthda;province=provinc;city=cit;count=n; 11 12 } 13 } 14 15 class Student extends Person 16 {public String major; 17 public int sum1,sum2,sum3; 18 public int grade;
19 public int number; 20 public int score; 21 22 Student(String nam,String birthda,String provinc,String cit,int n,String majo,int grad,int scor) 23 { super(nam,birthda,provinc,cit,n); 24 major=majo; 25 grade=grad; 26 score=scor;
27 String a,b,c; 28 a=new String("網絡工程"); 29 b=new String("物聯網"); 30 c=new String("計算機科學與技術"); 31 32 33 if(major.equals(a)) 34 {number=grade*10000+01*100+count; 35 } 36 if(major.equals(b)) 37 {number=grade*10000+02*100+count; 38 } 39 if(major.equals(c)) 40 {number=grade*10000+03*100+count; 41 } 42 43 } 44 public void searchname(String nam) 45 { int i=-1; 46 i=name.indexOf(nam); 47 48 if(i!=-1) 49 System.out.println(name); 50 }; 51 public void searchbirthday(String num) 52 { 53 int i=-1; 54 i=birthday.indexOf(num); 55 if(i!=-1) 56 System.out.println(name); 57 } 58 public void searchplace(String place) 59 { 60 int i=-1; 61 i=province.indexOf(place); 62 if(i!=-1) 63 System.out.println(name); 64 65 } 66 67 public int separate() 68 { 69 String a,b,c; 70 71 a=new String("網絡工程"); 72 b=new String("物聯網"); 73 c=new String("計算機科學與技術"); 74 if(major.equals(a)) 75 { 76 sum1=sum1+score; 77 return sum1; 78 } 79 if(major.equals(b)) 80 {sum2=sum2+score; 81 return sum2; 82 } 83 if(major.equals(c)) 84 { 85 sum3=sum3+score; 86 return sum3; 87 } 88 else return 0; 89 } 90 91 public static void main(String[] args) 92 { 93 System.out.println("初始數據:學生1:姓名:張三,生日:1998年11月15日,省份:青海,城市:西寧,專業:物聯網,入學年份:2017,成績:89"); 94 System.out.println(" 學生2:姓名:李四,生日:1999年01月08日,省份:河南,城市:洛陽,專業:網絡工程,入學年份:2017,成績:97"); 95 System.out.println(" 學生3:姓名:王二,生日:1998年07月24日,省份:山東,城市:青島,專業:網絡工程,入學年份:2017,成績:92"); 96 System.out.println(" 學生4:姓名:趙六,生日:1997年08月30日,省份:陜西,城市:西安,專業:計算機科學與技術,入學年份:2017,成績:84"); 97 System.out.print("查找姓‘王’的學生為:"); 98 Student stud1=new Student("張三","1998年11月15日","青海","西寧",01,"物聯網",2017,89); 99 Student stud2=new Student("李四","1999年01月08日","河南","洛陽",02,"網絡工程",2017,97); 100 Student stud3=new Student("王二","1998年07月24日","山東","青島",03,"網絡工程",2017,92); 101 Student stud4=new Student("趙六","1997年08月30日","陜西","西安",04,"計算機科學與技術",2017,84); 102 stud1.searchname("王"); 103 stud2.searchname("王"); 104 stud3.searchname("王"); 105 stud4.searchname("王"); 106 System.out.print("查找生日為1999年01月08日的學生為:"); 107 stud1.searchbirthday("1999年01月08日"); 108 stud2.searchbirthday("1999年01月08日"); 109 stud3.searchbirthday("1999年01月08日"); 110 stud4.searchbirthday("1999年01月08日"); 111 System.out.print("查找所在地區是陜西的學生為:"); 112 stud1.searchplace("陜西"); 113 stud2.searchplace("陜西"); 114 stud3.searchplace("陜西"); 115 stud4.searchplace("陜西"); 116 stud1.separate(); 117 stud2.separate(); 118 stud3.separate(); 119 stud4.separate(); 120 int add1=0,add2=0,add3=0; 121 add1=stud1.sum1+stud2.sum1+stud3.sum1+stud4.sum1; 122 add2=stud1.sum2+stud2.sum2+stud3.sum2+stud4.sum2; 123 add3=stud1.sum3+stud2.sum3+stud3.sum3+stud4.sum3; 124 System.out.println("網絡工程班總成績是:"+add1); 125 System.out.println("物聯網班總成績是:"+add2); 126 System.out.println("計算機科學與技術班總成績是:"+add3); 127 } 128 }

心得總結:

(1)在定義數據類型時一定不要加上static,不然後面的對象數據會覆蓋之前的數據

(2)在統計成績時,一定要先運行對象中的函數separate(),因為對象是無法自動執行函數

(3)最後是通過該實驗,掌握了幾個新的調用函數,如:indexOf(),這個函數作用是匹配字符串中的相同部分,equals(),這個函數作用是比較兩個字符串是否相同,如果不同則返回-1,相同則返回0

實驗7:Student類繼承Person類,並增加查找,統計功能