JavaCh3-面向对象程序设计和类的概念.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JavaCh3-面向对象程序设计和类的概念

第三章 面向对象程序设计引言int init(){ ……}#include stidoi.hint SIZE_OF_PAGE=10; ……int main(int argc,char** argv){ ……}#ifndef _NF_CONNTRACK_AMANDA_H#define _NF_CONNTRACK_AMANDA_H/* AMANDA tracking. */extern unsigned int (*nf_nat_amanda_hook)(struct sk_buff *skb, enum ip_conntrack_info ctinfo, unsigned int matchoff, unsigned int matchlen, struct nf_conntrack_expect *exp);#endif /* _NF_CONNTRACK_AMANDA_H */int fork(){ ……}***.c***.hmain.c面向过程引言……class Carclass Person面向对象(Object Oriented)(物件导向)将数据和对数据的操作封装至类中把现实世界中的实体抽象为类再通过类创建实例,即对象,通过对象之间的联系(调用)使程序运行类是对象的数据类型,是构建对象的模板主要内容重点访问控制,实例成员和类成员,重载和覆盖难点实例成员和类成员,编译时多态和运行时多态3.1 类和对象3.1.13.1.2对象类3.1.1 类[修饰符] class 类泛型 [extends 超类] [implements 接口列表]类声明{ 成员变量声明; 成员方法声明;}[修饰符] 数据类型 变量[=表达式]{,变量[=表达式]}[修饰符] 返回值类型 方法名 ([参数列表]) [throws 异常列表]{ 语句序列; [return[返回值]];}定义类3.1.2 对象声明对象(的引用变量) 类名 变量名;对象的实例化 new 类的构造方法([参数列表])将引用指向实例 变量名=new 类的构造方法([参数列表])引用对象的成员变量和调用对象方法对象.成员变量对象.成员方法([参数列表]) lecture/src/ch3/C301/ClassTest.javaClassTest.java3.1.2 对象栈内存堆内存P1标识的对象-30age……对age的访问p1.getAge()P2标识的对象0age对age的访问p2.getAge()…对象的引用模型类是对象的模板,同一个类可以创建多个对象,每个对象有各自的内存空间,不会互相影响3.1.2 对象对象的的关系运算和比较相等==和!=比较两个对象的引用是否相等,即是否引用同一个实例equals()方法比较两个对象是否相等,定义类时可通过覆盖equals()方法给出判断本类对象是否相等的标准 lecture/src/ch3/C301/ClassTest.javaClassTest.java3.2 类的封装性封装(encapsulation)OOP中信息隐藏思想的技术实现将数据和对数据的操作组合起来构成不可分割的实体隐藏实现细节,通过接口与外部联系将类成员通过访问控制隐藏private int age; public int getAge() { return this.age;}只能通过提供的接口访问成员3.2 类的封装性3.2.13.2.53.2.23.2.43.2.3访问控制浅拷贝和深拷贝实例成员和类成员this引用和instanceof运算符构造方法和析构方法3.2.1 构造方法和析构方法构造方法一类特殊的成员方法,用于创建类的实例并初始化对象声明构造方法构造方法与类同名,且没有返回值调用构造方法通过new运算符3.2.1 构造方法和析构方法默认构造方法Java为每个类提供一个默认的无参的构造方法但当自行声明了构造方法后,这个默认的无参构造方法不再提供拷贝构造方法由同一个类的已知对象创建新对象的构造方法能够实现对象的复制构造方法重载提供多种创建实例时的初始化方案 lecture/src/ch3/C302/ConstructorTest.javaConstructorTest.java方法重载方法重载类中可以有多个同名方法,前提是它们的参数列表必须不同参数列表不同是指参数的类型、个数和次序不同,不包含参数名不同、返回值不同的情况只有参数列表不同,编译时才能决定调用的到底是哪个方法 lecture/src/ch3/C302/ConstructorTest.javaConstructorTest.java3.2.1 构造方法和析构方法析构方法析构方法声明为: protected void finalize() thorws Thorwable一个类只有一个fina

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档