实训JAVA语言设计——类设计训练

本文通过具体实例介绍了如何使用Java进行图形界面编程,包括绘制矩形、显示学生信息等,展示了构造方法的应用及static和final关键字的使用。

1.三角形类:

importjava.awt.*;

importjava.applet.*;

classrectangles//定义rectangles类

{

publicintWidth;

publicintHeight;

publicrectangles(intCWidth,intCHeight)//构造方法

{

Width=CWidth;

Height=CHeight;

}//构造方法定义毕

publicvoidShowrectangle(Graphicsg,intx,inty)

{

g.drawString("Width:"+Width,x,y);

g.drawString("Height:"+Height,x,y+20);

g.drawString("Area:"+Height*Width,x,y+40);

}

}//dogs类定义毕

publicclassc4_1extendsApplet

{

publicvoidpaint(Graphicsg)

{

rectanglesmyrect=newrectangles(20,30);

myrect.Showrectangle(g,25,120);

}

}

//html文件:

<html><head><title>appletprogram</title></head><body><appletcode="a.class"

Width=200height=250></applet></body></html>

2.学生信息

importjava.awt.*;

importjava.applet.*;

classstudents//定义students类

{

//以下三行定义students类的数据成员

publicStringstu_NO;

publicStringstu_name;

publicintgrade1;

publicintgrade2;

//以下六行是students类的成员方法Showstudent()的定义

publicvoidShowstudent(Graphicsg,intx,inty)

{

g.drawString("stu_N.O:"+stu_NO,x,y);

g.drawString("stu_name:"+stu_name,x,y+20);

g.drawString("totalgrade:"+(grade1+grade2),x,y+40);

}

//成员方法Showstudent()定义完成

}//students类定义毕

publicclassc4_2extendsApplet

{

publicvoidpaint(Graphicsg)

{

//以下为创建对象

studentsliuxing;//声明了一个名为liuxing的对象,它属于students类

liuxing=newstudents();//建立lixing对象,为它分配存储空间

studentshanfeng=newstudents();//声明hanfeng对象的同时建立该对象

studentsyingwei=newstudents();//声明yingwei对象的同时建立该对象

studentszhaoke=newstudents();//声明zhaoke对象的同时建立该对象

studentslishu=newstudents();//声明lishu对象的同时建立该对象

//以下几行引用对象的数据成员,将一组值赋给对象的数据成员

liuxing.stu_name="liuxing";

liuxing.stu_NO="10010";

liuxing.grade1=95;

liuxing.grade2=94;

hanfeng.stu_name="hanfeng";

hanfeng.stu_NO="10011";

hanfeng.grade1=85;

hanfeng.grade2=92;

yingwei.stu_name="yingwei";

yingwei.stu_NO="10012";

yingwei.grade1=68;

yingwei.grade2=84;

zhaoke.stu_name="zhaoke";

zhaoke.stu_NO="10013";

zhaoke.grade1=75;

zhaoke.grade2=77;

lishu.stu_name="lishu";

lishu.stu_NO="10014";

lishu.grade1=89;

lishu.grade2=91;

//以下两行引用对象的成员方法

liuxing.Showstudent(g,25,25);

hanfeng.Showstudent(g,200,25);

yingwei.Showstudent(g,25,120);

zhaoke.Showstudent(g,200,120);

lishu.Showstudent(g,25,240);}}

3.用构造方法写:

importjava.awt.*;

importjava.applet.*;

classstudents//定义students类

{

publicStringstu_NO;

publicStringstu_name;

publicintgrade1;

publicintgrade2;

publicstudents(StringCstu_NO,StringCstu_name,intCgrade1,intCgrade2)//构造方法

{

stu_NO=Cstu_NO;

stu_name=Cstu_name;

grade1=Cgrade1;

grade2=Cgrade2;

}//构造方法定义毕

publicvoidShowstudent(Graphicsg,intx,inty)

{

g.drawString("stu_NO:"+stu_NO,x,y);

g.drawString("stu_name:"+stu_name,x,y+20);

g.drawString("totalgrade:"+(grade1+grade2),x,y+40);

}

}//dogs类定义毕

publicclassc4_3extendsApplet

{

publicvoidpaint(Graphicsg)

{

studentsliuxing=newstudents("10010","liuxing",95,94);

studentshanfeng=newstudents("10011","handeng",85,92);

studentsyingwei=newstudents("10012","yingwei",68,84);

studentszhaoke=newstudents("10013","zhaoke",75,77);

studentslishu=newstudents("10014","lishu",89,91);

liuxing.Showstudent(g,25,25);

hanfeng.Showstudent(g,200,25);

yingwei.Showstudent(g,25,120);

zhaoke.Showstudent(g,200,120);

lishu.Showstudent(g,25,240);

}

}

4. 用pulic类来定义一个无修饰符的static,final类!

importjava.awt.*;

importjava.applet.*;

classpp{

staticintn=33;

finalintnn;//声明nn,但没有赋初值

finalintk=55;//声明k并赋初值40

pp()

{nn=++n;}//在构造方法中给nn赋值

}

publicclassc4_4extendsApplet

{

publicvoidpaint(Graphicsg)

{

ppm1=newpp();//创建对象m1,使其静态数据成员nn的值为21

ppm2=newpp();//创建对象m2,使其静态数据成员nn的值为22

//m1.nn=90;//这是一个错误的赋值语句,因为nn是标识符常量

g.drawString("m2.nn="+m2.nn,20,30);

g.drawString("m2.k="+m2.k,20,50);

g.drawString("m1.nn="+m1.nn,20,70);

g.drawString("m1.k="+m1.k,20,90);

g.drawString("m1.nn="+m1.nn,20,110);g.drawString("m2.k="+m2.k,20,130);

<!--EndFragment-->
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值