Java面向对象程序设计基础+(2)_IT168文库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第3章Java面向对象程序设计基础付蓉1本讲主要内容„定义类„创建类的实例对象„构造函数„访问控制修饰符„静态属性、静态方法与静态初始化器„最终类、最终属性、最终方法„this25.1定义类—简单形式类修饰符class类名{修饰符类型名属性;修饰符类型名方法(参数列表){……}}3类声明-定义类首部//类声明首部,class不要大写,类名首字母大写classQQ{……}publicclassEmployee{……}abstractclassStudent{……}finalclassMaster{……}4类声明定义-修饰符„类访问控制符:„public:可被任意程序调用„缺省:只能被本包(本目录)的程序调用„抽象类说明符:abstract„没有自己的对象„只能被继承„最终类说明符:final„不能被继承5类的声明-类体声明-属性定义[修饰符]类型变量[=初值];或[修饰符]类对象名[=new构造函数(实参表)]修饰符为:1.访问控制修饰符:控制谁有权访问该属性或者对象zprivate:私有zprotected:保护zpublic:公有zprivateprotected:私有保护62静态修饰符static:类属性,类的所有对象共有的这个属性。区别于对象属性。3最终修饰符final:对于任何一个对象来说都是不变的。classEmployee{staticStringcompanyName=“EasyTech”;staticfinalintMAX_AGE=70;}7类的声明-类体中方法定义[修饰符]返回值类型方法名(参数列表)throws异常名列表{局部变量声明语句序列}例:publicbooleanverifyPassword(StringuserEnteredPwd){if(password.equals(userEnteredPwd)){returntrue;}else{returnfalse;}}//endofverifyPassword8访问控制符:public,protected,private,privateprotected静态修饰符:static抽象修饰符:abstract最终修饰符:final同步修饰符:synchronous本地修饰符:native9类声明举例z类的属性:表明该类对象的性质和状态。z类的方法:对属性进行操作或与其他类或对象进行交互。z举例:见E:\课件:面向对象程序编程\示例代码\ch3\bankzBankCardzAccount105.2创建和使用类的实例对象1、声明类对象:类名对象变量[=new类名(实参表)];例1:Accountacc1,acc2=newAccount();例2:Accountacc1,acc2;acc1=newAccount();acc2=newAccount();声明变量例1:intx,y=0;例2:intx,y;x=0;y=0;112、带参数的初始化Accountacc1=newAccount(’1’,’张三‘,’123’,1000);Accountacc2=newAccount(’2’,’李四‘,’456’,9999);3、使用对象属性:System.out.println(acc1.address);//wrongacc1.balance+=100000;//rightacc1.save(100000);4、使用对象方法:acc1.draw(1000);12对象声明、初始化后的内存分配acc1=newAccount(“1”,”张三“);0x01abcdefnull0NULL0x01abcdef1“张三”Accountacc1;acc1=newAccount();13其他的一些类的例子¾Date:classDate{intday,mon,year;publicvoidsetDay(intd){day=d;}publicintgetDay(){returnday;}……}14其他的一些类的例子¾Force:classForce{doublefx,fy,x,y;}¾Point:classPoint{intx,y;}¾Circle:classCircle{doublex,y,radius;}¾Frame,Applet,Button,Label,ActionEvent¾Rectangle,Triangle,Polygon¾String,IOException155.3构造函数¾构造函数特殊的成员函数,每次实例化对象时执行。¾构造函数的方法名与类名相同。¾构造函数没有返回类型¾不能被程序员显式的调用,只能在初始化对象时调用Accountacc1=newAccount(’1’,’张三‘,’123’,1000);165.4访问控制符-修饰属性和方法zpublic:可以被任何类访问。z缺省:可以被包中任何类访问。zprivate:只能被本类的方法访问。zprotected:本包内和所有的子类。zprivateprotected:所有的子类。175.5静态属性、静态方法和静态初始化器zstatic所修饰的属性属于类,而不属于对象,是类的属性。zstatic返回类型方法名属于类,而不是对象,类的方法zstatic{}z称为静态初始化器,不是方法,用来初始化静态属性。z例static{m_NextEmpNo=1001;}z注意:static方法只能操作同一个类中的static属性,但可以操作其他类的对象,就像在main中所作的那样。185.7最终类、最终属性、最终方法¾finalclass类名finalclassMaster{……}//该类不能有子类¾final类型属性finalintMAX_AGE=30;//该属性为常数¾final返回类型方法名finalpublicvoidsetPwd(Stringpwd){}//该方法不能被覆盖。¾finalize()对象消失时执行的方法¾注意:abstract不能与final合用,为什么?19类和对象的图形表示-UMLCommonEmployeemanagerNamesetManagerName()getManagerName()EmployeeidnamedeptIdgetId()setId()getName()setNaame()getDeptId()setDeptId()Shapearea()Circleradiusarea()RectAnglewidthheightarea()Trianglesideheightarea()20类和对象的图形表示-其他表示方法CustomerJackCustomerJillAccountbalance=100SV129CustomerAccountdepositdeposit2000drawdraw100021类的演示:系统类„发明类:自己创建类。„发现类:使用已有的类,如:JDK类。22作业„区分类和对象„定义自己周围的类,至少五个,例如:电话,电脑、作业„将前面的输出素数、求级数和的作业,重新设计类,将计算过程和输出结果分为两个类来实现。„书上作业:3-5,3-623类声明定义首部---继承或扩展父类classEmployee{intmEmpNo;intmDeptNo;}classCommonEmployeeextendsEmployee{intmManagerNo;}24类声明定义首部-接口接口是一个抽象的类,相当于一种类型,其中的定义的方法都没有实现,需要在实现类中实现。例:publicMyFrameextendsFrameimplementsActionListener{

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功