- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 类与面向对象编程 4.1面向对象编程基础 4.2类的编程实现 4.3对象的定义与使用 4.4重载 4.5访问控制符 4.6其它修饰符 面向对象编程基础 类(Class) 类是描述对象的“基本原型”,它定义一类对象所能拥有的数据和能完成的操作。在面向对象的程序设计中,类是程序的基本单元 相似的对象可以归并到同一个类中去,就像传统语言中的变量与类型关系一样。 程序中的对象是类的一个实例,是一个软件单元,它由一组结构化的数据和在其上的一组操作构成。 面向对象编程基础 面向对象编程基础 对象的主要属性是状态和行为。 对象的状态为静态属性,即变量。它表示对象所处的状态。对象的操作可以改变对象的状态。 对象的行为为动态属性,也成为操作。操作的作用是设置或者改变对象的状态。 ClassDemo.java Class ClassDemo { int a; int b; ClassDemo() { a = 2; b = 3; } void show() { System.out.println(“a=”+a+”,b=”+b); } public static void main(String args[])……….. } 面向对象编程基础 面向对象程序设计的优点: 较高的可维护性。面向对象编程中,程序由多个类组成,类中包含属性和方法的定义,类与类之间通过方法调用实现交互,而不是共享数据,这彻底消除了面向过程编程中数据与操作分离带来的问题,提高了程序的可维护性。 可重用性高,通过设计一个个实现特定功能的对象,可提高程序的可重复性。继承是面向对象的一个重要特性,通过继承可以实现子类对父类的扩展和父类代码的重复使用,提高了程序开发效率,降低了开发成本。 保护数据。通过将数据封装在对象中,对外只提供访问数据的方法,保护了数据不能被随便修改,减少了模块间的干扰。 对象的抽象 一、对象的抽象 用面向对象方法解决现实世界的问题时,去掉物体中与问题不相关的部分,并形成我们需要的类的过程成为抽象。 封装 封装是利用将数据和对数据的操作封装在一个抽象数据类型中,数据被保护在抽象数据类型的内部,系统的其它部分只能通过接口才能与数据进行交互。 类定义 Java中,类定义的基本语法如下: [Specifier]class ClassName[extends SuperClassName][implements InterfaceName] { //类的成员变量定义 //类的方法定义 … } 类定义 下面的代码定义了一个最简单的类Person: // Person.java //this program is about the definition of the person class Person { } 域的定义 域定义的方式如下: [Specifier] type variableName; int x = 3, y; //定义了整型变量x和y Date today; //定义了Date型类变量today Char [] m; //定义了字符型数组变量x和y 域定义的一个例子 下面定义了一个包含域的定义的类Person: // Person.java //this program is about the definition of the person class Person { //域定义 String name; //姓名 int sex; //性别 private double salary; //薪水 int age; //年龄 } 方法的定义 方法由方法头和方法体构成,方法定义的语法如下: [Specifier] returnType methodName([parameterList]) { //方法体 } 1. 方法的返回值 在进行方法定义时,Java要求必须说明返回值的类型。如果方法没有返回值,那么需要在方法名前添加关键字void int mx(){ i++; j=i++; System.out.println(i=+i); System.out.println(j=+j); return (j*i); } 无返回值的方法 void mp(){ i=j=6; System.out.println(i=+i); System.out.println(j=+j); } 2. 方法的参数 Java的方法也可以带参数,以便从
文档评论(0)