- 1、本文档共60页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch2-ja曾va核心思想:面向对象
第二章 Java核心思想:面向对象 本章任务 1、理解类和对象的概念和异同,自定义类; 2、理解超类和子类,理解继承和软件可重用性,通过继承现有的类来创建新类; 3、理解多态性以及利用多态性来实现软件可扩展性和可维护性; 4、理解抽象类和具体类的异同; 5、了解访问控制。 2.2 基础知识 2.2.1 面向对象思想 1、数据封装:封装(encapsulation)是把类的数据、变量、操作和方法封装在类体中,使之与外界分隔开。 2、继承(extends):新的类继承原有类的基本特性。 3、多态性(polymophism):一个名称有多种功能,或者相同的接口有多种实现方法。多态性的实现:通过方法的重载(overloading)、复盖(overriding)和接口来实现。 面向对象思想(2) 4、方法的重载:多个方法具有相同的名称,但各个方法的参数表不同,即参数的类型和参数的数量不同。 5、复盖:子类中的方法复盖父类中同名的方法。 6、接口:特殊的类,只有方法的原型,方法的实现在其子类中具体定义。 2.2.2 类和对象 对象表示现实世界中某个具体的事物。 抽象是从特定的实例中抽取共同的性质以形成一般化概念的过程。 对象具有两方面的含义: 在现实世界中: 是客观世界中的一个实体 在计算机世界中: 是一个可标识的存储区域 类和对象 (2) 类是具有共同属性和行为的对象的抽象。 类可以定义为数据和方法的集合。 类也称为模板,因为它们提供了对象的基本框架。 2.2.3 类的Java实现 class name { type variable1; … type variableN; ? type methodname1(parameter-list){ //方法体 } … type methodnameN(parameter-list){ //方法体 } } 定义方法 定义方法的一般格式: [access] type methodname1([parameter-list]){ //方法体 } 对象作为参数 class Test{ int a,b; ? Test(int i,int j) { a=i; b=j; } //可以在函数中改变对象状态 void change(Test obj) { obj.a=50; obj.b=40; } } 构造方法(函数) 构造函数名称与类名称相同 构造函数没有返回类型 其任务是在创建对象时初始化其内部状态 创建对象 使用下列语法可创建对象: new 构造函数 关键字 new 通常称为创建运算符,用于分配对象内存,并将该内存初始化为缺省值。 一旦 new 完成分配和初始化内存,它就将调用构造函数来执行对象初始化。 重载构造函数 Java 为每一个类自动提供缺省构造函数 缺省构造函数将成员变量的值初始化为缺省值 一旦创建了自己的构造函数,缺省的构造函数将不复存在。 重载构造函数提供了一组创建对象的方式,可以根据需要决定是否带初始参数。 2.2.4 继承 被继承的类称为父类 继承父类的类称为子类 执行继承时,子类将获得父类的属性,并具有自身特有的属性。 extends关键字 extends关键字用于继承类。 声明一个继承父类的类的通常形式如下: class subclass-name extends superclass-name { //类体 } 没有extends,默认父类为Object 只能有一个父类,即单继承 子类继承父类的全部成员 继承示例 class Employee { String name; //姓名 char sex; //性别 Employee(String n, char s){ name = n; sex = s; } public String getName() { return name; } public char getSex(){ return sex;}} 2.2.5 访问控制 访问控制(2) 访问修饰符为: public protected private 如果一个类或类的成员前没有任何访问修饰符时,它们获得缺省的访问权限。 public 访问修饰符 只有在使用 public 访问修饰符时,类的成员才可被同一包或不同包中的所有类访问。 也就是说,public 访问修饰符可以使类的特性公用于任何类。 private 访问修饰符 private 访问修饰符是限制性最大的一种访问修饰符。 被声明为private的成员只能被此类中的其
文档评论(0)