- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
J培训讲义
第四章 Java的类与对象 授课教师:杨进中 教育科学与技术系 Email:copoplar@126.com 面向对象编程的难点: 掌握面向对象编程的难点在于思路的转换。 我们通常习惯于考虑解决问题的方法,而不是将问题抽象成对象再去解决。 一个简单的例子: 编写一个驾驶汽车的方法。 面向过程的设计: 编写一个函数:void drivecar() 面向对象的设计: 将一辆汽车看成一个对象,将所有汽车的共性抽象出来,设计一个类Car,类中有一个方法: void driveCar() 用Car这个类实例化一个对象car,调用: car.driveCar() Review:对象 类和对象的关系 对象是类的实例(Instance),类是对象的模板。 类是抽象的,对象是具体的。 类实质上是一种数据类型:类 类型 class type 所以可以使用类名来声明对象变量。 声明对象变量以后,还不能使用对象,必须使用new运算符创建对象实体后,才能使用对象。 关于实例方法和实例数据成员的进一步说明 一个类所有的实例(对象)调用的成员方法在内存中只有一份拷贝,尽管在内存中可能有多个对象, 而数据成员在类的每个对象所在内存中都存在着一份拷贝。 this变量允许相同的实例方法为不同的对象工作。每当调用一个实例方法时,this变量将被设置成引用该实例方法的特定的类对象。方法的代码接着会与this所代表的对象的特定数据建立关联。 关键字static 静态方法和静态变量是属于某一个类,而不属于类的对象。 静态方法和静态变量的引用直接通过类名引用。 在静态方法中不能调用非静态的方法和引用非静态的成员变量。反之,则可以。 可以用类的对象obj去调用静态的方法method(),如:obj.method()。 方法的重载 方法重载即指多个方法可以享有相同的名字。 但是这些方法的参数必须不同, 或者是参数个数不同, 或者是参数类型不同。 变量和作用域 局部(local)变量是在一个方法内定义的变量, 也被称作自动(automatic)、临时(temporary)或栈(stack)变量 当一个方法被执行时, 局部变量被创建;当一个方法被终止时, 局部变量被清除 ? 局部变量使用之前必须先初始化, 否则编译出错。 成员变量的隐藏 可以用方法来实现对成员变量的隐藏: 设置方法setVariable(), 获取方法getVariable()。 原则上,对所有的实例变量都应该有操作。 class Point{ private double x, y; Point(double x, double y){ this.x = x; this.y = y; } void setX(double x) { this.x = x; } double getX() { return x; } } (1)对象的生成 通过new操作符生成一个对象;例如: Point p1 = new Point(0, 0); (2)对象的构造过程 为对象开辟空间,并对对象的成员变量进行缺省的初始化; 对成员变量进行指定的初始化; 调用构造方法。 再看对象的创建 Point p1 = new Point(0,0); Point p2; p2 = p1; 引用变量的赋值 对象的使用是通过一个引用类型的变量来实现; 通过运算符 · 可以实现对变量的访问和方法的调用。 对象的使用 - 访问属性和方法 class TestPoint { public static void main(String[] args){ Point point = new point( ); int a; a = point.x; //引用point的成员变量x point.move(1, 2); //调用point的方法move() } } 例如: 特殊变量 this 访问对象的成员一般要通过该对象。 如果要在某一个方法中访问当前正在使用的对象的成员,因为类的对象可有多个,这些对象都可以访问该方法,因此定义该方法时无法明确通过对象引用来指定。 为此,Java语言引入了关键字this。 this只能用在方法体内,this代表的就是当前这个对象的引用。 显式使用this 多数情况下不需要显式的使用this,系统会自动利用this确保方法那访问的成员属于当前正在被操作的对象。 this有三个常见用途: 1、返回当前对象,或者把当前对象作为参数传递给其他方法时; 2、如果局部变量
您可能关注的文档
最近下载
- 2024中国电信股份有限公司陕西分公司校园招聘试题及答案解析.docx
- (正式版)-B 5768.2-2022 道路交通标志和标线 第2部分:道路交通标志.docx VIP
- 有毒有害气体安全防护培训.pptx VIP
- 北师大版数学六年级上册数学好玩备课教案.docx VIP
- 20-丙型肝炎病毒实验活动风险评估报告.doc VIP
- 《AI时代如何做好班主任》---校长在班主任培训会上的讲话.doc VIP
- 在作风建设专题研讨会上的发言材料.docx VIP
- 数字智慧方案IDC工业企业数字化的两种路径(35页PPT).pptx VIP
- 【PPT课件】2024特种设备重大事故隐患判定准则培训资料.pptx
- CATIA高级应用-七大技巧-个人总结,图文.pdf VIP
文档评论(0)