您的位置:首页 > 编程语言 > Java开发

java 语言程序设计-李尊朝 第6章 类和对象 典型习题

2012-12-15 09:47 447 查看
典型例题 6-3

设计一个活期存折类,其中包括成员变量name、indentity、address、balance、datae、hasPassword 、password

使用活期存折类创建对象,为zhangl办理一个活期存折,其成员变量的值分别为zhangsan(姓名)\1234567890(编号)\西安兴园10号(家挺地埴)\1000存款额\当天日期(办理日期)\true(是否要密码)\123456(

import java.util.*;
public class Bankbook
{
String name;
long identity;
String address;
int balance;
Date date;
boolean hasPassword;
long password;
Bankbook(String str1,long i,String str2,int m,Date d,boolean y,long p)
{
name=str1;
identity=i;
address=str2;
balance=m;
date=d;
hasPassword=y;
password=p;
}
public void show()  //显示存折信息
{
System.out.println("基本信息");
System.out.println(name+" "+identity+" "+address);
System.out.println(balance+" "+date+" "+hasPassword+" "+password);
}
public static void main(String args[])
{
Bankbook zhangsan=new Bankbook("zhangsan",1234567890,"西安市兴庆路10号",
1000,new Date(),true,123456);
zhangsan.show();
}
}


例6-4 定义一个birth类,其成员变量有:year(年)、month(月)、day(日)。其无参构造方法将成员变量初始化成:year=100,moth=1,day=1(对应日期有为2000年1月1日);有参构造方法对成员变量进行合理初始化。

创建brith对象,通过构造方法初始化成员变量,输出成员变量值 及年龄

例6-4      定义一个birth类,其成员变量有:year(年)、month(月)、day(日)。其无参构造方法将成员变量初始化成:year=100,moth=1,day=1(对应日期有为2000年1月1日);有参构造方法对成员变量进行合理初始化。

创建brith对象,通过构造方法初始化成员变量,输出成员变量值 及年龄

import java.util.Date;
class Birth
{
private int year;
private int month;
private int day;
public Birth()
{
year=100; month=1; day=1;  //日期为2000年1月1日
}
public Birth( int y, int m, int d )
{
year=y;
if(m>0&&m<=12)
month=m;             //将m的值赋给成员变量month
else
{
month = 1;          //如果m的值有误,将成员变量month的值设置为1
}

day=checkDay(m,d);
//对d值进行检测
}
private int checkDay(int m,int d)
{
int DaysOfMonth[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if (d>0&&d==DaysOfMonth[m])
return d;
else
{
return 1;
}
}
public String toString()
{
return year+1900+"年/"+month+"月/"+day+"日";
}
public static void main(String args[])
{
int age;
Birth zhang=new Birth(94,02,17);
System.out.println(" Zhang's birth is "+zhang.toString());
Date today=new Date();
age=today.getYear()-zhang.year;   //Date是系统定义的日期类,通过它可以获得系统的当前日期,方法getYear()的功能是取得Date对象的年份值。
System.out.println(" Zhang is "+age+" years old ");
}
}

运行结果:

zhang’s birth is 1994年2月17日

zhang is 13 years old


运行结果:

zhang’s birth is 1994年2月17日

zhang is 13 years old

例6_5 请指出下面程序中类成员变量与实例变的不同之处

class StaticTest
{
public int x=1;
public static int y=1;
}
public class dxlt_6_5 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i;
StaticTset.y=StaticTest.y+1;
StaticTest m=new StaticTest();
StaticTest n=new StaticTest();
m.x=m.x+3;
m.y=m.y+1;
n.x=n.x+5;
n.y=n.y+5;
System.out.println("m.x"+m.x+"m.y="+m.y);
System.out.println("m.x"+m.x+"m.y="+m.y);
}

}


运行结果:

m.x=4 m.y=10

n.x=6 n.y=10
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: