• 实验7:Student类继承Person类,并增加查找,统计功能


    源代码如下:

      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         Student stud1=new Student("张三","1998年11月15日","青海","西宁",01,"物联网",2017,89);
     98         Student stud2=new Student("李四","1999年01月08日","河南","洛阳",02,"网络工程",2017,97);
     99         Student stud3=new Student("王二","1998年07月24日","山东","青岛",03,"网络工程",2017,92);
    100         Student stud4=new Student("赵六","1997年08月30日","陕西","西安",04,"计算机科学与技术",2017,84);
    101         System.out.println("张三的学号为:"+stud1.number);
    102         System.out.println("李四的学号为:"+stud2.number);
    103         System.out.println("王二的学号为:"+stud3.number);
    104         System.out.println("赵六的学号为:"+stud4.number);
    105         System.out.print("查找姓‘王’的学生为:");
    106         stud1.searchname("王");
    107         stud2.searchname("王");
    108         stud3.searchname("王");
    109         stud4.searchname("王");
    110         System.out.print("查找生日为1999年01月08日的学生为:");
    111         stud1.searchbirthday("1999年01月08日");
    112         stud2.searchbirthday("1999年01月08日");
    113         stud3.searchbirthday("1999年01月08日");
    114         stud4.searchbirthday("1999年01月08日");
    115         System.out.print("查找所在地区是陕西的学生为:");
    116         stud1.searchplace("陕西");
    117         stud2.searchplace("陕西");
    118         stud3.searchplace("陕西");
    119         stud4.searchplace("陕西");
    120         stud1.separate();
    121         stud2.separate();
    122         stud3.separate();
    123         stud4.separate();
    124         int add1=0,add2=0,add3=0;
    125         add1=stud1.sum1+stud2.sum1+stud3.sum1+stud4.sum1;
    126         add2=stud1.sum2+stud2.sum2+stud3.sum2+stud4.sum2;
    127         add3=stud1.sum3+stud2.sum3+stud3.sum3+stud4.sum3;
    128         System.out.println("网络工程班总成绩是:"+add1);
    129         System.out.println("物联网班总成绩是:"+add2);
    130         System.out.println("计算机科学与技术班总成绩是:"+add3);
    131     }
    132     }

    心得总结:

    (1)在定义数据类型时一定不要加上static,不然后面的对象数据会覆盖之前的数据

    (2)在统计成绩时,一定要先运行对象中的函数separate(),因为对象是无法自动执行函数

    (3)最后是通过该实验,掌握了几个新的调用函数,如:indexOf(),这个函数作用是匹配字符串中的相同部分,equals(),这个函数作用是比较两个字符串是否相同,如果不同则返回-1,相同则返回0

  • 相关阅读:
    数据结构 队列
    数据结构 堆栈
    UNP学习 广播
    UNP学习 路由套接口
    QTcpSocket发送结构体
    线性表及实现
    [转]理解WSRF之一 使用WS-ResourceProperties (整理自IBM网站)
    详解x86、IA-32、IA-64等CPU系列
    gsoap框架下的onvif程序流程分析
    【LeetCode】从contest-21开始。(一般是10个contest写一篇文章)
  • 原文地址:https://www.cnblogs.com/fjcy/p/10821383.html
Copyright © 2020-2023  润新知