通过编程和上机实验,掌握类和构造方法的定义及创建对象的方法,掌握类的封装及继承原则,正确使用重载和覆盖等多态概念设计可复用方法,熟悉包、接口的使用方法,掌握面向对象的程序设计方法。
1、编写MyDate类,完善上次实验中的人员信息录入,实现日期合法性判断,包括大小月和闰年。
package shiyaner;
import java.util.*;
class Student {private String name;private MyDate mydate;private int age;private double score;public Student(String n,int y,int m,int d,double s){mydate=new MyDate(y, m, d);name=n;score=s;Calendar calendar = Instance();ar<=(Calendar.YEAR)){h&(Calendar.MONTH)+1){ ar; }else h&(Calendar.MONTH)+1){ar;}else{if(mydate.day<=(Calendar.DATE)){ar; }else ar;}}else age=-1;}public int getAge(){return age;} public String toString(){return "姓名:"+name+"t年龄:"+age+"t出生日期:"+ar+"年"+h+"月"+mydate.day+"日tJAVA课程成绩:"+score;}
}class MyDate {int year;int month;int day; public MyDate(int y,int m,int d){year=y;month=m;day=d;}public boolean isVaildYear(int year){if(year<0||year>2020)return false;else return true;} public boolean isVaildMonth(int month){if(month<1||month>12)return false;else return true;}public boolean isVaildDay(int year,int month,int day){if(day<1||day>theDaysOfMonth(year,month))return false;else return true;}public boolean isLeapYear(int year){if(year%400==0||year%100!=0&&year%4==0)return true;else return false;}public int theDaysOfMonth(int year,int month){switch(month) {case 1:case 3:case 5:case 7:case 8:case 10: case 12:return 31;case 4:case 6:case 9:case 11:return 30;case 2:if(isLeapYear(year))return 29;else return 28;default: return -1;}}public boolean isVaildDate(int year,int month,int day){if(isVaildYear(year)&&isVaildMonth(month)&&isVaildDay(year,month,day)) return true; else return false; }
}
public class shiyaner_yi {public static void main(String[] args){Student stu[]=new Student[999];MyDate md[]=new MyDate[999];double sc[]=new double[999];//记录成绩double sa[]=new double[999];//记录年龄double sumsc=0,sumsa=0;@SuppressWarnings("resource")Scanner ss=new Scanner(System.in);int i=0;while(true){System.out.println("请输入学生的姓名、出生年月日和java课程实验成绩:"); String name;int year,month
本文发布于:2024-02-03 22:40:05,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170697135751484.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |