第6章 JAVA第四讲 面向对象(一).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四讲:面向对象 3.面向对象 3.1面向对象的概念 3.1.1理解面向对象 面向对象是相对面向过程而言,面向对象和面向过程都是一种思想,面向对像将功能封装进对象,强调具备了功能的对象。 没有初始化对象,即是没有实例化,系统默认姓名为空值,年龄是0 3.1.2面向对象的特点 1.是一种符合人们思考习惯的思想 2.可以将复杂的事情简单化 3.将程序员从执行者转换成了指挥者 4.完成需求时: 先要去找具有所需的功能的对象来用; 如果该对象不存在,那么创建一个具有所需功能的对象; 简化开发并提高复用。 P1就是一个标识符,没有实际意义,标识符指向对象在堆里面的地址。 3.1.3面向对象开发、设计、特征 1.开发的过程:实际就是不断的创建对象、使用对象,指挥对象做事情的过程。 2.设计的过程:其实就是在管理和维护对象之间的关系。 3.面向对象的特征:封装、继承、多态 3.2类与对象的关系 Java中描述事物通过类的形式体现,类是具体事物的抽象。对象即是该类事物实实在在存在的个体。 3.2.2 当一个程序中有多个类时,保存时文件名必须和main所在的类的类名一致,执行时也必须执行main所在的类的类名,不能执行其他类的类名,否则会出错。 3.2.3成员变量和局部变量的区别 1.成员变量 成员变量定义在类中,在整个类中都可以被访问 成员变量随着对象的建立而建立,存在于对象所在的堆内存中。 成员变量有默认初始化值。 2.局部变量: 存在栈内存中,没有默认初始化值。 定义在局部范围内:如函数内,语句内。 作用的范围结束,变量空间会自动释放。 3.2.5对象内存结构 3.2.6匿名对象 1.匿名对象是对象的简化形式。 2. 匿名对象的两种使用情况 (1)当对象方法仅进行一次调用的时候 (2)匿名对象可以作为实际参数进行传递 class A{ private int x=3; public static void main(String[]args){ new A().func(new A());//请求解释这句 } public void func(A a){//请求解释这句,A,a分别代表什么 System.out.println(a.x); //请求解释这句 } } new A()创建了一个匿名的对象(你可以想象为一个孩子出生了,但没有名字),后面的.func(new A())是该匿名对象的方法(不管孩子有名没名,他都有方法的是吧..),该方法的传递的参数是new A(),注意这里的new A()跟前面那位没名的孩子不是同一人,只不过他也没有名字而已。。 2.这一局就是声明方法func(),方法是参数是类A的对象,所以这里的A是指类A,而a是他的一个对象(注意这里是形参,没有具体创建对象a)。。 3.a是A的实例,他就是有名的孩子了,他的名字叫a,也有属性x,所以该剧输出为3,因为x初始化为3了,所有的A类的实例的x属性初始值都是3.。 private是一个权限修饰符,用于修饰成员(成员变量,成员函数),被私有化的成员只在本类中有效。 例: private int age; private关键字把属性age 私有化了,只能在本类中可以访问属性age。 2.常用一:将成员变量私有化,对外提供对应的set,get方法对其进行访问。提高对数据访问的安全性。 3.4.2构造函数(构造器) 特点: 函数名与类名相同 不用定义返回值类型 不可以写return语句 作用: 初始化对象 this关键字 哪个对象去调用这个构造函数,this就是哪个对象。 例: Boolean result=pare(p2); P1 在调用compare函数,因此this指代p1,而不是p2. 特点:this代表其所在函数所属对象的引用,也就是this代本类对象的引用。 当在函数内需要用到调用该函数的对象时,要用this。 错误分析:语法没错,却没有实现对象的初始化。 static关键字 1.好处:(1)节约空间。涉及国籍等有共性的东西,就用static。 (2)可以直接被类名调用 2.静态的特点:共享!被所有对象所共享 随着类的加载而加载; 优先于对象存在; 可以直接被类名所调用; 被所有对象共享。 3.类变量和实例变量的区别: 存放位置不一样:类变量存放在方法区中(共享区),实例变量随着对象的建立而存在于堆内存中。 生命周期 类变量生命周期最长,随着类的消失而消失,实例变量生命周期随着对象的消失而消失。 Static country(类变量) 存在方法

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档