面向对象程序设计基础(上).ppt

面向对象程序设计基础(上).ppt

ID:52530161

大小:620.56 KB

页数:71页

时间:2020-04-09

面向对象程序设计基础(上).ppt_第1页
面向对象程序设计基础(上).ppt_第2页
面向对象程序设计基础(上).ppt_第3页
面向对象程序设计基础(上).ppt_第4页
面向对象程序设计基础(上).ppt_第5页
资源描述:

《面向对象程序设计基础(上).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、面向对象程序设计基础(上)抽象封装类定义继承多态抽象所有编程语言都提供“抽象”功能。你所能解决问题的复杂程度取决于抽象的种类和质量。汇编语言对于计算机(机器语言)是一步很小的抽象。过程化语言(高级语言)对于汇编语言的抽象迈了一大步。但你所考虑的仍然是机器的结构而非问题的结构。面向对象方法为程序员提供了一种表示问题空间元素的全新的方法,而且不受问题类型的约束。对象“对象”就象是一台小“计算机”:对象有状态对象有你要求它执行的操作现实世界中的对象:它们都有自己的状态它们又都有自己的行为程序中的对象用属性表示状态用方法(代码)实现行为

2、封装-信息隐藏“封装”是一种组织软件的方法。其基本思想是把客观世界中联系紧密的元素及相关操作组织在一起,使其相互关系隐藏在内部,而对外仅仅表现为与其他封装体间的接口。从而构造出具有独立含义的软件实现。封装并不是一个新的概念,但在面向对象的程序设计中提出了一种全新的封装方法──类封装-信息隐藏每个类里都封装了相关的数据和操作。在实际的开发过程中,类多用来构建系统内部的模块,由于封装特性把类内的数据保护得很严密,模块与模块间仅通过严格控制的数据或操作进行交互,使它们之间耦合和交叉大大减少,从而降低了开发过程的复杂性,提高了效率和质量

3、,减少了可能的错误,同时也保证了程序中数据的完整性和安全性。在程序中定义你抽象出的类新类必须在已有类的基础上构造。在已有类的基础上构造新类的过程称为派生。派生出的新类称为已有类的子类。已有类称为超类(父类)。子类继承父类的方法和属性。当没有显式指定父类时,父类隐含为java.lang包中的Object类。父类子类类定义—属性说明classEmployee{Stringname;intage;floatsalary;}Employeee=newEmployee();e.name=“张立”;e.age=21;e.salary=528

4、.37F;System.out.println(e.name+”年龄为:”+e.age+“月薪为:”+e.salary);final类型常量名=值常量:只能赋一次值类定义—方法说明为Employee类增加打印方法——将数据和代码封装在一个单一的实体中。classEmployee{Stringname;intage;floatsalary;voidprint(){System.out.println(name+”年龄为:”+age+“月薪为:”+salary);}}//class对象方法的含义Employeeemp=newEmpl

5、oyee();emp.name=“张立”;emp.age=21;emp.salary=528.37F;一旦对象被建立并被初始化,就可以调用该方法打印这个对象的数据。emp.print();对象emp执行print方法操作自己的数据;而不是从外部操作对象的数据。向对象发消息,让对象做某件事。对象的几个特征Everythingisanobject原则上说,你可以将所要解决的问题中的任何一个“概念组件”在程序中表示为一个对象。对象类似一个变量,可以存储数据,但你还可以让它执行某些操作,处理相应的数据。Everyobjecthasaty

6、pe每个对象都是某个类的实例,都有对应的类定义。Aprogramisabunchofobjectstellingeachotherwhattodobysendingmessages所谓对一个对象发信息,就是调用该对象的一个方法。对象+消息是OOP语言的主要编程模式数据的隐藏-封装属性的访问权限privatepublic默认(相当于package)使用private修饰属性后,就不能直接通过对象名访问这些它们,而只能通过该对象的公有方法来间接操作这些属性。将属性私有化,然后通过公有方法处理它们有很多好处:方法可以保护数据(做各种合

7、法性检查)。使得代码可维护性好(方法中的代码可变,但方法的调用形式可以不变)1方法的定义规则方法名后的小括号是方法的标志。参数列表是该方法的调用环境传递给它的数据。返回值是方法在操作完成后返还给调用它的环境的数据。要指定方法返回值类型。如没有返回值,类型要写void方法名相同,但参数不同,是不同的方法。[修饰符]返回类型方法名([参数列表])[throws异常]{……}方法的参数方法的参数要有名有型,作用域仅在本方法中,在方法体中可以象方法体自己定义的变量一样使用。参数是值传递!!!对象的内容可以改变,但对象的引用决不会改变。方

8、法的参数可以与类中的属性同名,这时,参数在方法体中将隐藏同名的属性。classCircle{intx,yradius;voidsetCircle(intx,inty,intradius){/*…*/}}引用类型值传送基本类型值传送地址传送值传送与地址传送3.14

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。