Java程序设计:OOP与多态
需积分: 0 114 浏览量
更新于2024-08-23
收藏 532KB PPT 举报
"该资源是关于Java编程的课程资料,主要关注面向对象编程(OOP)的概念,特别是多态性。课程由陆绍飞教授,参考书籍包括《Thinking in Java》和《Java编程思想》等。课程内容涵盖从对象基础到网络编程的多个主题,并通过实例演示了如何创建和使用各种形状的类,如Square、Triangle和Circle,以及如何利用多态性进行方法调用。"
在Java中,伴随多态性的可互换对象是面向对象编程的一个核心概念。多态性允许你使用一个父类类型的引用指向子类的对象,从而在不需知道具体对象类型的情况下调用其公共方法。在这个例子中,`Shape` 是一个抽象基类,它定义了 `draw()`, `erase()`, `move()`, `getColor()` 和 `setColor()` 这些方法。`Square`, `Triangle`, 和 `Circle` 都是从 `Shape` 类派生出来的子类,它们至少实现了 `draw()` 和 `erase()` 方法。
`doStuff(Shape s)` 函数接受一个 `Shape` 类型的参数,这意味着它可以接受任何 `Shape` 的子类对象。在函数内部,`s.erase()` 和 `s.draw()` 的调用会根据实际传入的对象类型执行对应子类的方法。这就是后期绑定或动态绑定的体现,Java会在运行时根据对象的实际类型来决定调用哪个版本的方法,而不是在编译时确定。
在非面向对象编程中,这样的操作通常需要显式地知道对象的类型,即前期绑定,这限制了代码的灵活性。而在Java这样的OOP语言中,你可以编写更加通用的代码,这些代码可以处理多种类型的对象,只要它们符合一定的接口或继承关系。
课程的目标是使学生掌握Java语言的OOP模式,不仅限于编码,还涉及网络编程。课程结构包括一系列主题,从基础的对象概念到高级的特性如多线程和网络编程,通过学习这些,学生将能够使用Java进行更复杂的系统开发。此外,课程还强调了实践和实验,通过作业、期中和期末考试进行评估,确保学生对所学知识有深入的理解和应用能力。
115 浏览量
点击了解资源详情
点击了解资源详情
101 浏览量
583 浏览量
2024-06-27 上传
191 浏览量
163 浏览量
2013-03-26 上传
四方怪
- 粉丝: 30
- 资源: 2万+
最新资源
- Struts In Action (Manning).pdf
- FPGA-CPLD 数字电路设计经验分享
- Ubuntu Server Administration(2009).pdf
- 2009年四级网络工程师模拟试题及答案
- dissecting mfc
- STK ——Satellite Tool Kit(卫星工具箱)学习课件
- c#word操作的常用方法
- MyEclipse中运行Shark源代码
- 棋盘覆盖问题.doc
- matlab函数大全
- 计算机组成原理答案,供大家参考
- Hough变换检测直线Matlab代码
- Advanced_bash_scripting_guide.pdf
- 26步获得 网站流量
- JAVA认证-310-055-Q&A-TEST KILLER
- 谭浩强C语言word版