String s=\ s+=\ return s; }
public String getName(){ return name; }
public String getAge(){ return age; }
public void incAge(){ age++; }
public Person[] getChidren(){ return children; }
public void setChildren(Person[] mychildren){ children=mychildren; }
public static void main(String args[]){ Person p1=new Person(\ Person p2=new Person(\
Person[]c1={p1,p2};
Person p3=new Person(\
System.out.println(\ Person[]mychild=p3.getChildren(); for (int k=0;k System.out.println(\} } } 5-4.编写一个代表日期的类,其中有代表年月日的三个属性,创建日期对象时要判断参数提供的年月日是否合法,不合法要进行纠正,年默认值为2000;月的值在1到12之间,默认值为1;日由一个对应12个月的整型数组给出合法值,特别的,对于二月,通常为28天,但闰年的二月最多29天,该年的值为400的倍数,或者为4的倍数但不为4的倍数但不为100的倍数的年份为闰年。将创建的日期对象输出时,年月日之间用“/”分隔。 Public class Date{ Private int year=2000; Private int month=1; Private int day; Public Date (int theYear,int theMonth,int theDay){ If(theMonth>0&&theMonth<=12) month=theMonth; else month=1; year=theYear; day=checkDay(theDay); } Private int checkDay(int testDay){ Int daysPerMonth[]={31,28,31,30,31,30,31,31,30,31,30,31}; If(month==2&&testDay<=29&&(year@0==0||(year%4==0&&year0!=0))) Return testDay; If(testDay>0&&testDay<=daysPerMonth[month-1]) Return year+”/”+month+”/”+day; } Public String toString(){ Return year+”/”+month+”/”+day;} Public static void main(String args[]){ Date d=new Date(2010,3,29); System.out.println(“日期为:”+d); Date m=new Date(2010,2,30); System.out.println(“日期为:”+m); } } 5-5 编写一个矩阵类,其中封装有一个代表矩阵的二维数组,并提供一个实现两个相同行、列的矩阵的相加方法。利用随机函数产生两个3行4列的矩阵,验证类设计。 public class Matrix{ int m; int n; int [][] num; public Matrix(int m,int n){ this.m=m; this.n=n; num=new int[m][n]; } public void initialMatrix(){ for(int i=0;i num[i][j]=(int)(Math.random()*10); } } public static Matrix plus(Matrix a,Matrix b){ if(a.m!=b.m||a.n!=b.n){ return null; } else{ Matrix c=new Matrix(a.m,a.n); for(int i=0;i c.num[i][j]=a.num[i][j]+b.num[i][j]; return c; } } public void output(){ for(int i=0;i