欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第3章Java面向对象编程.ppt

    • 资源ID:75316907       资源大小:1,000.50KB        全文页数:46页
    • 资源格式: PPT        下载积分:9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第3章Java面向对象编程.ppt

    Java第第3 3章章 JavaJava面向对象编程面向对象编程 Java类类类类 2staticstatic和和和和thisthis关键字关键字关键字关键字 4面向对象基础面向对象基础面向对象基础面向对象基础 3 1对象对象对象对象3 3访问权限访问权限访问权限访问权限6包包包包3 5本章内容提要本章内容提要 Java 面向对象的程序设计方法面向对象的程序设计方法面向对象的程序设计方法面向对象的程序设计方法力求符合人脑的思力求符合人脑的思力求符合人脑的思力求符合人脑的思维方式,通过符合人类思维的更抽象的客观世界维方式,通过符合人类思维的更抽象的客观世界维方式,通过符合人类思维的更抽象的客观世界维方式,通过符合人类思维的更抽象的客观世界模型,降低、分解问题的难度和复杂性,并以此模型,降低、分解问题的难度和复杂性,并以此模型,降低、分解问题的难度和复杂性,并以此模型,降低、分解问题的难度和复杂性,并以此来解决问题。来解决问题。来解决问题。来解决问题。与结构化的程序设计方法有何区别?与结构化的程序设计方法有何区别?与结构化的程序设计方法有何区别?与结构化的程序设计方法有何区别?3 3.面向对象基础面向对象基础 Java 面向对象的基本原理面向对象的基本原理 面向对象方法学面向对象方法学面向对象方法学面向对象方法学是面向对象程序设计技术的是面向对象程序设计技术的是面向对象程序设计技术的是面向对象程序设计技术的理论基础。该理论的出发点和基本原则,是尽可理论基础。该理论的出发点和基本原则,是尽可理论基础。该理论的出发点和基本原则,是尽可理论基础。该理论的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法能模拟人类习惯的思维方式,使开发软件的方法能模拟人类习惯的思维方式,使开发软件的方法能模拟人类习惯的思维方式,使开发软件的方法与人类的认知过程同步,通过对人类认识客观世与人类的认知过程同步,通过对人类认识客观世与人类的认知过程同步,通过对人类认识客观世与人类的认知过程同步,通过对人类认识客观世界及事物发展过程的抽象,建立规范的分析设计界及事物发展过程的抽象,建立规范的分析设计界及事物发展过程的抽象,建立规范的分析设计界及事物发展过程的抽象,建立规范的分析设计方法,由此使程序具有良好的封装性、可读性、方法,由此使程序具有良好的封装性、可读性、方法,由此使程序具有良好的封装性、可读性、方法,由此使程序具有良好的封装性、可读性、可维护性、可重用性等一系列优点。可维护性、可重用性等一系列优点。可维护性、可重用性等一系列优点。可维护性、可重用性等一系列优点。3 3.面向对象基础面向对象基础 Java面向对象的基本概念面向对象的基本概念 1 1 1 1对象对象对象对象对象就是现实世界中实体在计算机逻辑中的映对象就是现实世界中实体在计算机逻辑中的映对象就是现实世界中实体在计算机逻辑中的映对象就是现实世界中实体在计算机逻辑中的映射和体现。射和体现。射和体现。射和体现。实体都具有一定的属性和行为。实体都具有一定的属性和行为。实体都具有一定的属性和行为。实体都具有一定的属性和行为。从面向对象的观点来看,所有的面向对象的程从面向对象的观点来看,所有的面向对象的程从面向对象的观点来看,所有的面向对象的程从面向对象的观点来看,所有的面向对象的程序都是由对象构成的。序都是由对象构成的。序都是由对象构成的。序都是由对象构成的。3 3.面向对象基础面向对象基础 Java 2 2 2 2类类类类 类类类类就是具有相同或相似属性和行为的对象的就是具有相同或相似属性和行为的对象的就是具有相同或相似属性和行为的对象的就是具有相同或相似属性和行为的对象的抽象。抽象。抽象。抽象。在面向对象的程序设计中,类与对象是抽象在面向对象的程序设计中,类与对象是抽象在面向对象的程序设计中,类与对象是抽象在面向对象的程序设计中,类与对象是抽象与具体的关系。与具体的关系。与具体的关系。与具体的关系。3 3.面向对象基础面向对象基础 Java 3 3 3 3属性属性属性属性对象的属性主要用来描述对象的状态。对象的属性主要用来描述对象的状态。对象的属性主要用来描述对象的状态。对象的属性主要用来描述对象的状态。属性用变量来定义。属性用变量来定义。属性用变量来定义。属性用变量来定义。4 4 4 4行为行为行为行为对象的行为又称为对象的操作,主要描述对象对象的行为又称为对象的操作,主要描述对象对象的行为又称为对象的操作,主要描述对象对象的行为又称为对象的操作,主要描述对象内部的各种动态信息。内部的各种动态信息。内部的各种动态信息。内部的各种动态信息。行为用方法来刻画。行为用方法来刻画。行为用方法来刻画。行为用方法来刻画。3 3.面向对象基础面向对象基础 Java 面向对象编程的特点面向对象编程的特点 1 1 1 1封装封装封装封装 封装封装封装封装,就是将事物的内部实现细节隐藏起来,就是将事物的内部实现细节隐藏起来,就是将事物的内部实现细节隐藏起来,就是将事物的内部实现细节隐藏起来,对外提供一致的公共的接口间接访问隐藏数据。对外提供一致的公共的接口间接访问隐藏数据。对外提供一致的公共的接口间接访问隐藏数据。对外提供一致的公共的接口间接访问隐藏数据。优点:使得优点:使得优点:使得优点:使得JavaJavaJavaJava程序具有良好的可维护性程序具有良好的可维护性程序具有良好的可维护性程序具有良好的可维护性 使得代码的重用性大为提高使得代码的重用性大为提高使得代码的重用性大为提高使得代码的重用性大为提高 3 3.面向对象基础面向对象基础 Java 2 2 2 2继承继承继承继承当一个类拥有另一个类的数据和操作时,就称这当一个类拥有另一个类的数据和操作时,就称这当一个类拥有另一个类的数据和操作时,就称这当一个类拥有另一个类的数据和操作时,就称这两个类具有继承关系。两个类具有继承关系。两个类具有继承关系。两个类具有继承关系。被继承的类称为父类或超类,继承父类的类称为被继承的类称为父类或超类,继承父类的类称为被继承的类称为父类或超类,继承父类的类称为被继承的类称为父类或超类,继承父类的类称为子类。子类。子类。子类。继承有单重继承和多重继承之分。继承有单重继承和多重继承之分。继承有单重继承和多重继承之分。继承有单重继承和多重继承之分。优点:使得面向对象的程序结构清晰,易于理解。优点:使得面向对象的程序结构清晰,易于理解。优点:使得面向对象的程序结构清晰,易于理解。优点:使得面向对象的程序结构清晰,易于理解。3 3.面向对象基础面向对象基础 Java 3.3.3.3.多态多态多态多态多态多态多态多态指多种表现形式,就是对象响应外部激励指多种表现形式,就是对象响应外部激励指多种表现形式,就是对象响应外部激励指多种表现形式,就是对象响应外部激励而使其形式发生改变的现象。而使其形式发生改变的现象。而使其形式发生改变的现象。而使其形式发生改变的现象。多态有两种情况:多态有两种情况:多态有两种情况:多态有两种情况:一种是通过类之间继承导致的同名方法覆一种是通过类之间继承导致的同名方法覆一种是通过类之间继承导致的同名方法覆一种是通过类之间继承导致的同名方法覆盖体现的,另一种是通过同一个类中同名方法盖体现的,另一种是通过同一个类中同名方法盖体现的,另一种是通过同一个类中同名方法盖体现的,另一种是通过同一个类中同名方法的重载体现的。的重载体现的。的重载体现的。的重载体现的。优点:提高了程序的抽象程度和简洁性。优点:提高了程序的抽象程度和简洁性。优点:提高了程序的抽象程度和简洁性。优点:提高了程序的抽象程度和简洁性。3 3.面向对象基础面向对象基础 Java1.1.类的声明类的声明 class class class class 类名类名类名类名 类体的内容类体的内容类体的内容类体的内容 例如:例如:例如:例如:class Student /class Student /class Student /class Student /定义类定义类定义类定义类StudentStudentStudentStudent 3 3.2 2 类类 Java 2.2.类体类体 class class class class 通常,通常,通常,通常,JavaJavaJavaJava中把成员变量放在方法前面定义。中把成员变量放在方法前面定义。中把成员变量放在方法前面定义。中把成员变量放在方法前面定义。3 3.2 2 类类 Java成员变量成员变量 在类体中并且在方法之外定义的变量称为在类体中并且在方法之外定义的变量称为在类体中并且在方法之外定义的变量称为在类体中并且在方法之外定义的变量称为成员成员成员成员变量变量变量变量。修饰符修饰符修饰符修饰符 变量类型变量类型变量类型变量类型 变量名;变量名;变量名;变量名;例如:例如:例如:例如:Integer Integer Integer Integer stuAgestuAgestuAgestuAge;intintintint age=9 age=9 age=9 age=9;3 3.2 2 类类 Java 成员方法成员方法 1 1 1 1方法定义方法定义方法定义方法定义 方法也由两部分组成,即方法也由两部分组成,即方法也由两部分组成,即方法也由两部分组成,即方法头和方法体方法头和方法体方法头和方法体方法头和方法体。返回值类型返回值类型返回值类型返回值类型 方法名方法名方法名方法名(参数列表参数列表参数列表参数列表)3 3.2 2 类类 Java (1 1 1 1)方法修饰符)方法修饰符)方法修饰符)方法修饰符 方法修饰符控制方法在什么条件下使用以及方法修饰符控制方法在什么条件下使用以及方法修饰符控制方法在什么条件下使用以及方法修饰符控制方法在什么条件下使用以及如何使用,包括如何使用,包括如何使用,包括如何使用,包括publicpublicpublicpublic(公有的)、(公有的)、(公有的)、(公有的)、privateprivateprivateprivate(私有的)及(私有的)及(私有的)及(私有的)及protectedprotectedprotectedprotected(保护的)。(保护的)。(保护的)。(保护的)。(2 2 2 2)返回值类型)返回值类型)返回值类型)返回值类型 返回值类型可以是基本数据类型、应用类型返回值类型可以是基本数据类型、应用类型返回值类型可以是基本数据类型、应用类型返回值类型可以是基本数据类型、应用类型(引用类型)以及(引用类型)以及(引用类型)以及(引用类型)以及voidvoidvoidvoid(空类型)。(空类型)。(空类型)。(空类型)。3 3.2 2 类类 Java (3 3 3 3)方法名)方法名)方法名)方法名 (4 4 4 4)形参列表)形参列表)形参列表)形参列表 形参列表是以形参列表是以形参列表是以形参列表是以“,”分开的、参数的数据类型分开的、参数的数据类型分开的、参数的数据类型分开的、参数的数据类型和变量名的列表。和变量名的列表。和变量名的列表。和变量名的列表。(111,nnn)3 3.2 2 类类 Java 2 2 2 2方法体方法体方法体方法体 方法的功能实现部分,主要由局部变量和语方法的功能实现部分,主要由局部变量和语方法的功能实现部分,主要由局部变量和语方法的功能实现部分,主要由局部变量和语句构成。句构成。句构成。句构成。方法体也可以是空的,即没有任何变量和语方法体也可以是空的,即没有任何变量和语方法体也可以是空的,即没有任何变量和语方法体也可以是空的,即没有任何变量和语句。句。句。句。例如:例如:例如:例如:void void void void setName(StringsetName(StringsetName(StringsetName(String name)name)name)name)例例例例3-13-13-13-1方法的定义方法的定义方法的定义方法的定义3 3.2 2 类类 Java构造方法构造方法(1 1 1 1)构造方法的方法名与类名相同。)构造方法的方法名与类名相同。)构造方法的方法名与类名相同。)构造方法的方法名与类名相同。(2 2 2 2)构造方法不允许声明返回值。)构造方法不允许声明返回值。)构造方法不允许声明返回值。)构造方法不允许声明返回值。(3 3 3 3)构造方法的作用是完成对类对象的初始化。)构造方法的作用是完成对类对象的初始化。)构造方法的作用是完成对类对象的初始化。)构造方法的作用是完成对类对象的初始化。(4 4 4 4)构造方法只能通过)构造方法只能通过)构造方法只能通过)构造方法只能通过newnewnewnew运算符调用,不能通过运算符调用,不能通过运算符调用,不能通过运算符调用,不能通过 对象或类调用。对象或类调用。对象或类调用。对象或类调用。(5 5 5 5)一个类可以定义多个构造方法。)一个类可以定义多个构造方法。)一个类可以定义多个构造方法。)一个类可以定义多个构造方法。3 3.2 2 类类 Java 例例例例3-23-23-23-2构造方法的定义构造方法的定义构造方法的定义构造方法的定义构造方法的作用:构造方法的作用:构造方法的作用:构造方法的作用:(1 1 1 1)为每个新建的对象赋初始值,从而保证每一)为每个新建的对象赋初始值,从而保证每一)为每个新建的对象赋初始值,从而保证每一)为每个新建的对象赋初始值,从而保证每一个新建的对象处于合理正常的状态。个新建的对象处于合理正常的状态。个新建的对象处于合理正常的状态。个新建的对象处于合理正常的状态。(2 2 2 2)引入更多的灵活度,使得初始化工作不仅仅)引入更多的灵活度,使得初始化工作不仅仅)引入更多的灵活度,使得初始化工作不仅仅)引入更多的灵活度,使得初始化工作不仅仅包括成员变量的赋值,还可以有更复杂的操作。包括成员变量的赋值,还可以有更复杂的操作。包括成员变量的赋值,还可以有更复杂的操作。包括成员变量的赋值,还可以有更复杂的操作。3 3.2 2 类类 Java对象创建对象创建1 1 1 1声明对象声明对象声明对象声明对象 type type type type objectnameobjectnameobjectnameobjectname;例如:例如:例如:例如:Student Student Student Student xiaolinxiaolinxiaolinxiaolin;3 3.3 3 对象对象xiaolin Java 2 2 2 2建立对象并初始化建立对象并初始化建立对象并初始化建立对象并初始化 实际上就是将一个类实例化,这是通过实际上就是将一个类实例化,这是通过实际上就是将一个类实例化,这是通过实际上就是将一个类实例化,这是通过newnewnewnew关键字来完成的。关键字来完成的。关键字来完成的。关键字来完成的。例如:例如:例如:例如:new Student(new Student(new Student(new Student(小林小林小林小林,1001,12);,1001,12);,1001,12);,1001,12);3 3.3 3 对象对象小林小林100112 Java 对象引用被赋值后,将指向一个真正的对象,对象引用被赋值后,将指向一个真正的对象,对象引用被赋值后,将指向一个真正的对象,对象引用被赋值后,将指向一个真正的对象,即对象引用的内存空间中存储这个新建立对象的即对象引用的内存空间中存储这个新建立对象的即对象引用的内存空间中存储这个新建立对象的即对象引用的内存空间中存储这个新建立对象的内存空间的首地址,那么通过对象引用就可以访内存空间的首地址,那么通过对象引用就可以访内存空间的首地址,那么通过对象引用就可以访内存空间的首地址,那么通过对象引用就可以访问这个对象的所有可以访问的成员了。问这个对象的所有可以访问的成员了。问这个对象的所有可以访问的成员了。问这个对象的所有可以访问的成员了。3 3.3 3 对象对象小林小林1001120 x032xiaolin0 x1032 Java 通过同一个类模板可以声明多个对象引用,通过同一个类模板可以声明多个对象引用,通过同一个类模板可以声明多个对象引用,通过同一个类模板可以声明多个对象引用,也可以建立并初始化多个对象:也可以建立并初始化多个对象:也可以建立并初始化多个对象:也可以建立并初始化多个对象:Student Student Student Student xiaolinxiaolinxiaolinxiaolin,xiaofeixiaofeixiaofeixiaofei;xiaolinxiaolinxiaolinxiaolin=new Student(=new Student(=new Student(=new Student(小林小林小林小林,1001,12);,1001,12);,1001,12);,1001,12);xiaofeixiaofeixiaofeixiaofei=new Student(=new Student(=new Student(=new Student(小飞小飞小飞小飞i,1002,16);i,1002,16);i,1002,16);i,1002,16);Student Student Student Student xiaoqiangxiaoqiangxiaoqiangxiaoqiang=xiaolinxiaolinxiaolinxiaolin;3 3.3 3 对象对象 Java 例例例例3-33-33-33-3创建对象创建对象创建对象创建对象判断对象判断对象判断对象判断对象a a a a的引用是否存在的引用是否存在的引用是否存在的引用是否存在a!=nulla!=nulla!=nulla!=null或或或或 a=nulla=nulla=nulla=null;判断判断判断判断a a a a、b b b b两个对象的引用是否相等两个对象的引用是否相等两个对象的引用是否相等两个对象的引用是否相等a=ba=ba=ba=b;判断判断判断判断a a a a、b b b b两个对象的值是否相等两个对象的值是否相等两个对象的值是否相等两个对象的值是否相等 a.equals(ba.equals(ba.equals(ba.equals(b)。3 3.3 3 对象对象 Java使用对象使用对象 有两种方式使用对象:有两种方式使用对象:有两种方式使用对象:有两种方式使用对象:一是通过对对象变量的引用来使用对象;一是通过对对象变量的引用来使用对象;一是通过对对象变量的引用来使用对象;一是通过对对象变量的引用来使用对象;objectRenference.variableobjectRenference.variableobjectRenference.variableobjectRenference.variable;二是通过调用对象的方法来使用对象。二是通过调用对象的方法来使用对象。二是通过调用对象的方法来使用对象。二是通过调用对象的方法来使用对象。objectRenference.methodName(paramlistobjectRenference.methodName(paramlistobjectRenference.methodName(paramlistobjectRenference.methodName(paramlist););););3 3.3 3 对象对象 Java 例例例例3-43-43-43-4使用对象使用对象使用对象使用对象3 3.3 3 对象对象 姓名:王非姓名:王非姓名:王非姓名:王非 学号:学号:学号:学号:10011100111001110011 学院编号:学院编号:学院编号:学院编号:11111111 姓名:黎明姓名:黎明姓名:黎明姓名:黎明 学号:学号:学号:学号:10012100121001210012 学院编号:学院编号:学院编号:学院编号:12 12 12 12 Java对象引用与对象实体对象引用与对象实体 对象引用和对象实体是相互独立的。对象引用和对象实体是相互独立的。对象引用和对象实体是相互独立的。对象引用和对象实体是相互独立的。例例例例3-53-53-53-5通过对象引用遥控对象实体通过对象引用遥控对象实体通过对象引用遥控对象实体通过对象引用遥控对象实体3 3.3 3 对象对象 学生:学生:学生:学生:小明小明小明小明 学生:学生:学生:学生:小明小明小明小明 学生:学生:学生:学生:小强小强小强小强 学生:学生:学生:学生:小强小强小强小强 null null null null Java垃圾回收机制垃圾回收机制 Java Java Java Java中,对象使用的内存空间的释放是自动中,对象使用的内存空间的释放是自动中,对象使用的内存空间的释放是自动中,对象使用的内存空间的释放是自动完成的,不需要在编码时考虑对象的释放问题。完成的,不需要在编码时考虑对象的释放问题。完成的,不需要在编码时考虑对象的释放问题。完成的,不需要在编码时考虑对象的释放问题。JavaJavaJavaJava运行系统具有所谓的运行系统具有所谓的运行系统具有所谓的运行系统具有所谓的“垃圾回收机制垃圾回收机制垃圾回收机制垃圾回收机制”,垃,垃,垃,垃圾回收器(圾回收器(圾回收器(圾回收器(garbage cllectorsgarbage cllectorsgarbage cllectorsgarbage cllectors,GCGCGCGC)在后台运)在后台运)在后台运)在后台运行,定时查看所有对象,识别那些不再被引用的行,定时查看所有对象,识别那些不再被引用的行,定时查看所有对象,识别那些不再被引用的行,定时查看所有对象,识别那些不再被引用的对象(垃圾),给予释放,回收分配给这些对象对象(垃圾),给予释放,回收分配给这些对象对象(垃圾),给予释放,回收分配给这些对象对象(垃圾),给予释放,回收分配给这些对象的内存。的内存。的内存。的内存。3 3.3 3 对象对象 Java 类变量类变量 被所有的类的所有实例共享的变量称为类变被所有的类的所有实例共享的变量称为类变被所有的类的所有实例共享的变量称为类变被所有的类的所有实例共享的变量称为类变量(量(量(量(class variableclass variableclass variableclass variable),类变量用修饰符),类变量用修饰符),类变量用修饰符),类变量用修饰符staticstaticstaticstatic描述。描述。描述。描述。3 3.4 static4 static关键字关键字 Java 常量常量 常量常量常量常量(constantconstantconstantconstant)就是一旦赋值就不能更改就是一旦赋值就不能更改就是一旦赋值就不能更改就是一旦赋值就不能更改其值的变量其值的变量其值的变量其值的变量。命名常量以关键字命名常量以关键字命名常量以关键字命名常量以关键字finalfinalfinalfinal修饰,其类型可以修饰,其类型可以修饰,其类型可以修饰,其类型可以是基本类型和引用类型。是基本类型和引用类型。是基本类型和引用类型。是基本类型和引用类型。例例例例3-63-63-63-6类变量的定义与访问类变量的定义与访问类变量的定义与访问类变量的定义与访问3 3.4 static4 static关键字关键字 Java 类方法类方法 类方法类方法类方法类方法(class methodclass methodclass methodclass method,又成为,又成为,又成为,又成为静态方法静态方法静态方法静态方法)也是以也是以也是以也是以staticstaticstaticstatic修饰的方法。修饰的方法。修饰的方法。修饰的方法。例例例例3-73-73-73-7通过类方法访问类变量通过类方法访问类变量通过类方法访问类变量通过类方法访问类变量 一般在以下两种情况下使用类方法:一般在以下两种情况下使用类方法:一般在以下两种情况下使用类方法:一般在以下两种情况下使用类方法:1 1 1 1如果方法的所有参数可以直接给定,不需要如果方法的所有参数可以直接给定,不需要如果方法的所有参数可以直接给定,不需要如果方法的所有参数可以直接给定,不需要访问实例变量时。访问实例变量时。访问实例变量时。访问实例变量时。2 2 2 2如果方法仅仅访问类变量时。如果方法仅仅访问类变量时。如果方法仅仅访问类变量时。如果方法仅仅访问类变量时。3 3.4 static4 static关键字关键字 Java 静态代码快静态代码快 静态代码块是在类中独立于类成员的静态代码块是在类中独立于类成员的静态代码块是在类中独立于类成员的静态代码块是在类中独立于类成员的staticstaticstaticstatic语句块,可以有多个,位置可以随便放,它不在语句块,可以有多个,位置可以随便放,它不在语句块,可以有多个,位置可以随便放,它不在语句块,可以有多个,位置可以随便放,它不在任何的方法体内,任何的方法体内,任何的方法体内,任何的方法体内,JVMJVMJVMJVM加载类时会执行这些静态加载类时会执行这些静态加载类时会执行这些静态加载类时会执行这些静态的代码块,如果的代码块,如果的代码块,如果的代码块,如果staticstaticstaticstatic代码块有多个,代码块有多个,代码块有多个,代码块有多个,JVMJVMJVMJVM将按将按将按将按照它们在类中出现的先后顺序依次执行它们,每照它们在类中出现的先后顺序依次执行它们,每照它们在类中出现的先后顺序依次执行它们,每照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次。个代码块只会被执行一次。个代码块只会被执行一次。个代码块只会被执行一次。3 3.4 static4 static关键字关键字 Java 在构造方法中使用在构造方法中使用thisthis thisthisthisthis出现在类的构造方法中时,代表使用该出现在类的构造方法中时,代表使用该出现在类的构造方法中时,代表使用该出现在类的构造方法中时,代表使用该构造方法时所创建的对象。构造方法时所创建的对象。构造方法时所创建的对象。构造方法时所创建的对象。例例例例3-83-83-83-8在构造方法中使用在构造方法中使用在构造方法中使用在构造方法中使用thisthisthisthis 3 3.5 this5 this关键字关键字 Java 在实例方法中使用在实例方法中使用thisthis 当当当当thisthisthisthis关键字出现在实例方法中时,代表正关键字出现在实例方法中时,代表正关键字出现在实例方法中时,代表正关键字出现在实例方法中时,代表正在使用该方法的当前对象。实例方法可以操作类在使用该方法的当前对象。实例方法可以操作类在使用该方法的当前对象。实例方法可以操作类在使用该方法的当前对象。实例方法可以操作类的成员变量,当实例成员变量在实例方法中出现的成员变量,当实例成员变量在实例方法中出现的成员变量,当实例成员变量在实例方法中出现的成员变量,当实例成员变量在实例方法中出现时,默认的格式是:时,默认的格式是:时,默认的格式是:时,默认的格式是:this.this.this.this.成员变量成员变量成员变量成员变量 类的实例方法可以调用类的其他方法,对于类的实例方法可以调用类的其他方法,对于类的实例方法可以调用类的其他方法,对于类的实例方法可以调用类的其他方法,对于实例方法调用的默认格式是:实例方法调用的默认格式是:实例方法调用的默认格式是:实例方法调用的默认格式是:this.this.this.this.方法名方法名方法名方法名(参数列表参数列表参数列表参数列表)3 3.5 this5 this关键字关键字 Java 为了更好的管理这些类,为了更好的管理这些类,为了更好的管理这些类,为了更好的管理这些类,JavaJavaJavaJava引入了引入了引入了引入了包包包包的概的概的概的概念。念。念。念。包是一种类似于文件夹的一种组织形式,包包是一种类似于文件夹的一种组织形式,包包是一种类似于文件夹的一种组织形式,包包是一种类似于文件夹的一种组织形式,包把各种类组织起来,一方面对类的命名空间进行把各种类组织起来,一方面对类的命名空间进行把各种类组织起来,一方面对类的命名空间进行把各种类组织起来,一方面对类的命名空间进行管理,另一方面作为隐含的访问控制修饰符,是管理,另一方面作为隐含的访问控制修饰符,是管理,另一方面作为隐含的访问控制修饰符,是管理,另一方面作为隐含的访问控制修饰符,是信息隐藏和封装的有力工具。信息隐藏和封装的有力工具。信息隐藏和封装的有力工具。信息隐藏和封装的有力工具。3 3.6 6 包包 Java 包的概念包的概念 为了方便管理,通常将需要在一起工作的类放为了方便管理,通常将需要在一起工作的类放为了方便管理,通常将需要在一起工作的类放为了方便管理,通常将需要在一起工作的类放在一个包中。只要包名是惟一的,那么包中的在一个包中。只要包名是惟一的,那么包中的在一个包中。只要包名是惟一的,那么包中的在一个包中。只要包名是惟一的,那么包中的类就有了惟一的类全名。类就有了惟一的类全名。类就有了惟一的类全名。类就有了惟一的类全名。包的引入解决了类名冲突问题。包的引入解决了类名冲突问题。包的引入解决了类名冲突问题。包的引入解决了类名冲突问题。包是一种多层次的组织结构,其成员有子包、包是一种多层次的组织结构,其成员有子包、包是一种多层次的组织结构,其成员有子包、包是一种多层次的组织结构,其成员有子包、类和接口。类和接口。类和接口。类和接口。3 3.6 6 包包 Java 创建包创建包 创建包需要使用关键字创建包需要使用关键字创建包需要使用关键字创建包需要使用关键字packagepackagepackagepackage,其一般的格,其一般的格,其一般的格,其一般的格式和语法为:式和语法为:式和语法为:式和语法为:package package package package 包名;包名;包名;包名;这条语句必须位于源文件的第一行,并且在同这条语句必须位于源文件的第一行,并且在同这条语句必须位于源文件的第一行,并且在同这条语句必须位于源文件的第一行,并且在同一个源文件中只能编写一条一个源文件中只能编写一条一个源文件中只能编写一条一个源文件中只能编写一条packagepackagepackagepackage语句。语句。语句。语句。例如:例如:例如:例如:package newpackage;package newpackage;package newpackage;package newpackage;package society.family;package society.family;package society.family;package society.family;例例例例3-93-93-93-9创建包创建包创建包创建包3 3.6 6 包包 Java 导入包导入包 1 1 1 1使用类全名使用类全名使用类全名使用类全名 例例例例3-103-103-103-10使用类全名使用类全名使用类全名使用类全名3 3.6 6 包包A0 100 10A0 100 10A0 100 10A0 100 10A1 101 11A1 101 11A1 101 11A1 101 11A2 102 12A2 102 12A2 102 12A2 102 12A3 103 13A3 103 13A3 103 13A3 103 13A4 104 14A4 104 14A4 104 14A4 104 14 Java 2 2 2 2导入需要的使用的类导入需要的使用的类导入需要的使用的类导入需要的使用的类 利用利用利用利用importimportimportimport关键字,将需要使用的类导入到关键字,将需要使用的类导入到关键字,将需要使用的类导入到关键字,将需要使用的类导入到当前程序中,当前程序中,当前程序中,当前程序中,例例例例3-113-113-113-11导入需要的类导入需要的类导入需要的类导入需要的类3 3.6 6 包包 Java 3 3 3 3导入整个包导入整个包导入整个包导入整个包 包中的所有的类都被加载到当前文件中。包中的所有的类都被加载到当前文件中。包中的所有的类都被加载到当前文件中。包中的所有的类都被加载到当前文件中。例如:例如:例如:例如:import schools.*;import schools.*;import schools.*;import schools.*;所有的所有的所有的所有的JavaJavaJavaJava程序自动导入程序自动导入程序自动导入程序自动导入java.langjava.langjava.langjava.lang包,因此,包,因此,包,因此,包,因此,import import import import java.langjava.langjava.langjava.lang.*.*.*.*语句可以省略不写。另外编译器语句可以省略不写。另外编译器语句可以省略不写。另外编译器语句可以省略不写。另外编译器在查找需要的类时有特定的查找顺序,先是在查找需要的类时有特定的查找顺序,先是在查找需要的类时有特定的查找顺序,先是在查找需要的类时有特定的查找顺序,先是JavaJavaJavaJava基本基本基本基本类库中的类,后是用户自定义的类。类库中的类,后是用户自定义的类。类库中的类,后是用户自定义的类。类库中的类,后是用户自定义的类。3 3.6 6 包包 Java 4 4 4 4文件打包文件打包文件打包文件打包 (1 1 1 1)将应用程序压缩成)将应用程序压缩成)将应用程序压缩成)将应用程序压缩成JARJARJARJAR文件文件文件文件 可以使用可以使用可以使用可以使用jar.exejar.exejar.exejar.exe命令把一些文件压缩成一个命令把一些文件压缩成一个命令把一些文件压缩成一个命令把一些文件压缩成一个JARJARJARJAR文件来发布应用程序。可以把文件来发布应用程序。可以把文件来发布应用程序。可以把文件来发布应用程序。可以把JavaJavaJavaJava应用程序中涉及的应用程序中涉及的应用程序中涉及的应用程序中涉及的类压缩成一个类压缩成一个类压缩成一个类压缩成一个JARJARJARJAR文件,然后文件,然后文件,然后文件,然后 JavaJavaJavaJava解释器执行这个压解释器执行这个压解释器执行这个压解释器执行这个压缩文件。缩文件。缩文件。缩文件。3 3.6 6 包包 Java 4 4 4 4文件打包文件打包文件打包文件打包(2 2 2 2)更新、查看)更新、查看)更新、查看)更新、查看JARJARJARJAR文件文件文件文件 可以使用参数可以使用参数可以使用参数可以使用参数t t t t和和和和f f f f查看一个查看一个查看一个查看一个JARJARJARJAR文件中的内容,如:文件中的内容,如:文件中的内容,如:文件中的内容,如:jar-jar-jar-jar-tftftftf Tom.jarTom.jarTom.jarTom.jar 使用参数使用参数使用参数使用参数x x x x和和和和f f f f解压解压解压解压JARJARJARJAR文件:文件:文件:文件:jar-jar-jar-jar-xfxfxfxf Tom.jarTom.jarTom.jarTom.jar 使用参数使用参数使用参数使用参数u u u u和和和和f f f f更新一个更新一个更新一个更新一个JARJARJARJAR文件,例如将文件,例如将文件,例如将文件,例如将Third.classThird.classThird.classThird.class文件增加至文件增加至文件增加至文件增加至Test.jarTest.jarTest.jarTest.jar中的命令为:中的命令为:中的命令为:中的命令为:ja

    注意事项

    本文(第3章Java面向对象编程.ppt)为本站会员(可****阿)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开