ava中的类与对象.ppt_第1页
ava中的类与对象.ppt_第2页
ava中的类与对象.ppt_第3页
ava中的类与对象.ppt_第4页
ava中的类与对象.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

0 类与对象 1 本节学习目标 1 理解什么是对象和类2 学会定义简单的类3 理解什么是构造函数4 学会创建与使用对象5 键盘输入 2 你怎样理解对象与类 简单地说 对象是表示现实世界中某个具体的事物 类是对对象的抽象描述 3 类的概念 类 是一种抽象的数据类型 它是所有具有一定共性的对象的抽象 本质上可以认为是对对象的描述 是创建对象的 模板 类的某一个对象则被称为是类的一个实例 是类的实例化结果 实例化 抽象 4 类的基本结构 类的声明 类体 成员变量 数据 状态 成员方法 函数 动作 5 二 Java语言的类1系统提供的类 Java系统为用户提供了大量已定义好的类 称为Java应用程序接口 JavaAPI JavaAPI是一组由软件供应商编写好的Java程序模块 每个模块通常对应一种特殊的基本功能和任务 用户在编程时可以直接引用这些模块 为了方便系统类的管理和使用 将系统类根据实现功能的不同 可以分为不同的集合 每个集合称为一个包 Package 所有的包合称为类库 6 2用户自定义类 修饰符 class类名 类成员变量声明 构造函数声明 类方法声明 7 一个对象的生命周期包括三个阶段 创建 使用和消除 Java语言中 系统在判定一个对象确实再没有被引用时 系统就会自动消除该 即回收分配给该对象的内存 这就是所谓的垃圾回收 对象 三 对象的创建与构造函数的定义 8 对象的创建 对象的创建包括声明 实例化和初始化 声明一个某类的对象 格式为 类名对象名 声明并不为对象分配内存空间 实例化 指使用运算符new为对象分配内存空间 一个类的不同对象分别占据不同的内存空间 格式为 对象名 new类名 初始化 是指给实例对象的属性字段赋初始值 一般通过调用对象的构造方法完成 9 创建一个对象的语法是 声明和实例化合并 类名创建的对象名称 new构造函数 说明 1 Java语言的对象由类创建 所以应先说明创建对象所属的类名称 然后再说明创建对象的名称 2 表示赋值号 new构造函数 使系统为对象创建自己的内存区域并自动调用构造函数初始化成员变量 10 成员变量和成员方法的引用 同一类中的成员可以相互直接引用 处于不同类成员的相互引用需要首先创建对象 然后才能引用具体的成员 引用格式如下 对象名 成员变量名对象名 方法名 参数列表 11 构造函数的特征 构造函数名与类名相同 构造函数没有返回类型 也不是void 构造函数可以带有形参 也可以没有形参 构造函数的主要作用是实现对象的初始化 为对象的数据成员赋初值 12 构造函数不能由编程人员显式地直接调用 而在创建对象时 由系统自动调用 如果类中没有显示的定义构造函数 系统则调用缺省的构造函数来实现对象的初始化 如果类中有显示的定义构造函数 系统将不再提供缺省的构造函数 构造方法可以有多个 创建对象时 构造函数实参的个数和类型应与类中定义的构造函数的形参的个数和类型相一致 13 14 举例以点类为例 分别定义不同的构造函数 带参数的和不带参数的 15 成员变量和成员方法的进一步说明 类的任何成员方法在内存中只存在一份拷贝 类的任何成员变量在内存中各有各的拷贝 举例 可为某个类声明不同的对象 并分别输出其成员变量 16 17 举例以点类为例 分别定义不同的构造函数 形参和成员变量同名和不同名的 18 19 静态变量 类变量 与静态方法 类方法 类变量 静态变量 用 static 修饰符声明的成员变量 可以直接使用类名来调用 静态变量和静态方法统称为类成员 非静态成员 非类成员 称为实例成员 类成员属于类 由各个对象共同拥有 1 类变量 20 类方法 用 static 修饰符声明的成员方法 静态方法是属于整个类的 只能处理静态成员 而不能处理属于某个对象的实例成员 因为静态成员是在类被加载时就被创建了 也就是说在类对象被创建之前就被加载了 类是在编译时加载的 而对象是在运行时被创建的 可以直接使用类名调用静态成员 静态方法中可以使用局部变量 注意 要有内存模型的概念 不能停留在事物的表面 2 静态方法 类方法 21 举例需要说明main 方法定义为static的原因 输出的累计人数 22 23 24 数据的键盘输入 Scanner类是Java5 0在java util包中新增加的一个类 该类用于输入数据 其数据来源可以是文件 字符串或键盘等 java util包是系统包 使用之前需要使用import语句进行引入 25 使用Scanner类从键盘上输入数据的步骤 1 创建一个该类的对象 并指定输入源 如果要从键盘上输入数据 常用类似于如下的格式 Scannersc newScanner System in 其中 System in在Java语言中表示标准输入设备 另外 经常使用的System out表示标准输出设备 一般指显示器 其实就是键盘 表示要从键盘上输入数据 Scanner对象一般使用空格符 包括空格 Tab键和换行符 分隔输入的内容 26 2 使用Scanner类提供的方法从数据源取得数据 Scanner类中定义的nextXXX方法 将输入内容中的数据取出并转换为不同类型 nextBoolean 将读到的信息转换为布尔值 并返回 nextByte 将扫描到的信息转换为byte类型 并返回 nextDouble 将扫描到的信息转换为double类型 并返回 nextFloat 将扫描到的信息转换为float类型 并返回 nextInt 将扫描到的信息转换为int类型 并返回该值 nextLong 将扫描到的信息转换为long类型 并返回 nextShort 将扫描到的信息转换为short类型 并返回 nextLine 读取一行的内容 并以字符串的形式返回该值 27 例如 以下代码使用户能够从键盘上 System in 读取一个整数 并将读到的数据保存在变量i中 Scannersc newScanner System in inti sc nextInt 28 小结 对象 类类的定义 对象的创建属性与方法 成员变量与成员方法 构造函数静态成员变量与静态成员方法面向对象程序设计思想中的抽象 封装特征的体会 29 上机作业 题目 定义一个描述人的类 分别创建一个姓名为 Tom Rose 性别为 男 女 年龄20岁 岁的对象 实例 输出这两个对象的信息 要求 1 定义人类Person 2 有一些基本的属性和方法3 定义一个对Person进行初始化的构造方法 对于成员变量的赋值可以采用显示赋值的方式 30 2定义一个汽车类 可以定义汽车的若干属性 如品牌 型号 颜色 重量 类别等信息并显示 要求 定义三个以上汽车 并求出并显示汽车的辆数 汽车的信息先采用构造函数直接传值 再采用键盘

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论