第三讲-Java面向对象技术.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三讲 Java面向对象技术 面向过程(函数) 分析要解决问题所需要的步骤 数据流分析 自上往下逐步求精 整个程序是函数的集合 函数之间往往形成互相调用的依赖关系 提高函数的独立性和降低耦合性是面向过程的设计目标之一 面向对象 以参与系统运转的实体/事务为中心,而不是数据流为中心 以功能而非步骤来划分问题 程序是对象的集合 对象包括状态和可以用于改变状态的操作 面向过程 vs 面向对象 并不是说一定谁好谁坏,只是两种不同的设计思维 某些问题天然适合面向过程设计 系统运行过程为调用一些相互之间独立的过程,后一次过程调用的输出不依赖于前一次过程调用 例如,事务处理系统 面向对象更能设计出可扩展的大型程序 良好的面向过程的程序通常都加入了面向对象的思维方式 模块化 松耦合 面向对象技术的核心理念 抽象 封装 复用 组合复用 继承复用 泛型 多态 面向对象的主体 ——对象 对象的实例 编号为苏A123456的红色法拉利跑车 编号为京D675634的出租车 编号为浙B7W3412的大型公交车 面向对象的主体 ——对象 法拉利跑车 车牌号XXX 能坐两个人 最大速度300公里/小时 已经跑了18000公里 排量为1.6T 现有油20升 当前行驶速度180公里 … 变量:指对象的所知道的状态。 方法:指对象的功能单元。 消息:软件对象通过相互间传递消息来相互作用和通信,一个消息由三部分组成: 接受消息的对象 接收对象要采取的方法 方法需要的参数 Java中的类、方法和变量--成员变量和局部变量的区别 语法的区别 成员变量属于类,可以被public, private, static等修饰符所修饰 局部变量是在方法中定义的变量或参数,不能被访问控制修饰符和static修饰 存储方式的区别 成员变量属于对象,存储在堆内存 局部变量存在栈内存 生存期的差别 成员变量随对象的创建而存在 局部变量随着方法调用而产生,方法调用结束自动消失 初值的差别 成员变量会被赋默认初值(final成员除外,需要显式初始化) 局部变量不会自动赋初值 Java中的类、方法和变量--访问权限 Java中的类、方法和变量——方法重载 方法重载 方法具有相同的名称 方法的含义相同、参数不同 参数个数不同 参数类型不同 参数顺序不同 例如, System.out.println()可以接收各种类型的参数void f(int x) { }void f(int x, int y) { }void f(int x, String s) {} 注:仅有返回值不同构不成方法重载int f(int x,int y){…}double f(int x,int y){…}//这两个方法不构成重载 Java中的类、方法和变量——方法重载 方法重载是编译时多态性的表现,Java编译程序会根据方法调用的实在参数来决定使用哪一个方法。 调用一个重载过的方法时,Java编译程序是如何确定究竟应该调用哪一个方法?以下代码定义了三个重载方法:public void f(char ch){ System.out.println(“char!”); }public void f(short sh){ System.out.println(“short!”); }public void f(float f){ System.out.println(“float!”); }当调用语句f((byte)65);时,到底调用的是上述哪一个方法?按“宽转换”,byte可自动转换成short或float,但short比float更特殊。特殊的含义是:short能够宽转换到float,反之不行。故最终调用的是方法:public void f(short sh){…}; 再如:public void f(Object o){…}public void f(int[] ia){…}当调用语句f(null);时,应调用哪一个方法?由于空引用null可自动转换到int[]类型,也可自动转换到Objec类型。但int[]数组类型更特殊(即:int[]数组类型是一个Object类型,但Object不是int[]数组),故最终调用的是f(int[] ia)方法 Java中的类、方法和变量——构造方法 构造方法是一个特殊的方法,用于在对象创建时进行对象初始化,在创建对象时调用 方法名必须与类名相同。 不要声明返回类型。 不能被static、final、synchronized、abstract和native修饰。 Java中的类、方法和变量--构造方法 对象创建:new操作符Car mycar;mycar = new Car();或Car mycar = new Ca

文档评论(0)

kabudou + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档