第4篇 面向对象程序设计.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 面向对象程序设计 主要任务: 理解面向对象编程的基本概念 了解类的封装方法 如何创建类和对象 了解成员变量和成员方法的特性 学习使用OOP方式进行程序设计 本章主要内容 1.创建体现OOP风格的Java的类与对象 2.成员变量 3.成员方法 4.1 创建体现OOP风格的Java类与对象 4.1.1 具有OOP风格的Java程序 4.1.2 创建Java类 4.1.3 创建Java对象 4.1.1 具有OOP风格的Java程序 Java是完全面向对象编程语言。面向对象编程(OOP)是一种全新的编程理念。 什么是对象?类又是什么?它们之间有什么关系?对象是如何通过消息和外部通讯的? 下面的内容就讨论这些问题。 4.1.2 创建Java类 类通过关键字class来创建,下面的声明语句格式给出了可能出现的符号和顺序: [public] [abstract] [final] class 类名 [extends 父类] [implements 接口] { 类体(成员变量和成员方法) } 其中,[ ]表示为可选项,表示为必选项。关键字含义说明如下: 1.class 类名 class关键字告诉编译器这是一个类,类名是可以自由选取但必须是合法的标识符。 在声明类的语句中,class前面的关键字称为类的修饰符。 2.访问限制修饰词 (1)public(公共的) 带有public修饰符的类,称为公共类,是访问限制最宽的修饰词,公共类可以被任何包中的类使用。 注意:在同一个源程序文件中只能有一个public类。 (2)private(私有的) 带有private修饰符的类,称为私有类,是访问限制最窄的修饰词,只能被该类的对象访问,其子类不能访问,更不能跨包访问。 (3)protect(保护的) 带有protect修饰符的类,称为保护类,能被该类的对象与子类访问,即使子类在不同包中也可以。 (4)default(默认的) 带有default修饰符的类,称为默认类,与没有任何修饰符相同,默认情况下,类只能被同一个包中的其他类访问。 3.Abstract(抽象的) 有时,定义的类代表了一个抽象的概念,就不能用它来实例化一个对象。 同样在OOP中,可能建立了一个不需要产生对象的类。例如,java.lang包中的Number类代表了数这个抽象概念,可以用它在程序中产生一个数的子类,如Interger或Float,但从Number中直接生成对象是没有意义的。 abstract说明的类称为抽象类,不能用它实例化一个对象,它只能被继承。 4.final(最终的) final说明的类称为最终类。一个最终类不可能有子类,也就是说它不能被继承。 黑客常用的一个攻击技术是设计一个子类,然后用它替换原来的父类。子类和父类很相象,但做的事情却大不一样。 5.Extends(继承)父类名 extends告诉编译器创建的类是从父类继承下来的子类,父类必须是Java系统类或已经定义的类。 从父类继承,可以提高代码的重用性,不必从头开始设计程序。大部分情况下应该利用继承的手段编程,只在没有合适的类可以继承时才自己设计类。 6.Implements(实现)接口名 implements告诉编译器类实现的接口,接口必须有定义,一般为系统类。 接口是消息传递的通道,通过接口,消息才能传递到处理方法中进行处理。implements说明你的类可以实现的一个或多个接口,如果有多个接口,要用逗号分隔。 例4.1 下面这个Applet程序将在页面上输出两个矩形,并伴有文字输出。见图: 程序代码: import java.awt.*; import java.applet.Applet; public class Class1 extends Applet { private int x, y, width, height; public void init() { width=60; height=60; } public void setPosition(int xPos, int yPos) { x=xPos; y=yPos; } public void paint(Graphics g) { setPosition(20,20); g.drawRect(x, y, width, height); g

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档