欢迎来到天天文库
浏览记录
ID:38838819
大小:332.32 KB
页数:30页
时间:2019-06-20
《Java程序设计2面向对象编程(总结)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2讲面向对象编程2.1.1类和对象对一个用户自定义的类,要为类取一个名字,并指明类中包含哪些变量和方法以及相应的类型、实现等,这称为类的定义。类定义语句的一般形式为:[修饰符]class类名[extends父类名][implements接口名表]{成员变量声明//类体方法成员声明}【例1】定义一个名为Rect表示长方形的类,它仅包含double类型的长length和宽width两个数据成员。【例2】定义一个名为Rectangle表示长方形的类,它包含double类型的长length和宽width两个数据成员和设置长方形长宽值的方法setDim()
2、、计算长方形面积的方法area()。对象举例:设已经定义了例5.2中的Rectangle类,可以用如下的方法来引用对象的成员:Rectangler=newRectangle();//定义类的对象r.length,r.width//引用对象的数据成员r.area()//引用对象的成员方法【例3】利用例5.1定义的类Rect,计算长和宽分别为20和10的长方形面积。classRectDemo{publicstaticvoidmain(Stringargs[]){Rectrect1=newRect();//为对象rect1分配存储空间doublearea
3、;rect1.width=20;//向数据成员赋值rect1.length=10;area=rect1.width*rect1.length;//对数据成员运算System.out.println("长方形面积是:"+area);}}3、构造方法的作用与构成构造方法:与类同名且没有任何返回值的方法;对象的初始化任务要靠构造方法来完成;一个类中可以有多个构造方法,名字相同而参数不同;构造方法一般用于类中变量的初始化。例:classRect{doublelength;doublewidth;Rect(doublel,doublew){Length=l;
4、width=w;}}2.1.3构造方法在Java中,任何变量在被使用前都必须先设置初值。Java提供了为类的成员变量赋初值的专门功能:构造方法(constructor)。构造方法是一种特殊的成员方法,它的特殊性反映在如下几个方面:(1)构造方法名与类名相同。(2)构造方法不返回任何值,也没有返回类型。(3)每一个类可以有零个或多个构造方法。(4)构造方法在创建对象时自动执行,一般不能显式地直接调用。【例6】分别计算长、宽分别为20、10和6、3的两个长方形面积。本程序用构造方法来初始化长方形的大小。classRectConstructor{doub
5、lelength;doublewidth;doublearea(){returnlength*width;}RectConstructor(doublel,doublew){length=l;width=w;}}classRectDemo3{publicstaticvoidmain(Stringargs[]){RectConstructorrect1=newRectConstructor(20,10);RectConstructorrect2=newRectConstructor(6,3);doublear;ar=rect1.area();Syst
6、em.out.println("第一个长方形的面积是:"+ar);ar=rect2.area();System.out.println("第二个长方形的面积是:"+ar);}}程序运行结果如下:第一个长方形的面积是:200.0第二个长方形的面积是:18.0练习1:编写程序,计算长方形的面积。classRectangle{doublewidth,height;Rectangle(doublew,doubleh){width=w;height=h;}doublearea(){returnwidth*height;}doubleperimeter(){r
7、eturn2*(width+height);}publicclassLx1{publicstaticvoidmain(Stringargs[])doublew=2,h=3,c,s;Rectangler=newRectangle(w,h);s=r.area();c=r.perimeter();System.out.println(“长方形的面积=”+s);System.out.println(“长方形的面积=”+c);}doubles2=area(3.0,4.0);System.out.println(“矩形的面积=”+s2);doubles3=ar
8、ea(3.0,4.0,5.0);System.out.println(“梯形的面积=”+s3);}程序运行的结果如下:圆的
此文档下载收益归作者所有