第3讲Java面向对象程序设计(一)课件

上传人:我*** 文档编号:143948680 上传时间:2020-09-03 格式:PPT 页数:25 大小:92KB
返回 下载 相关 举报
第3讲Java面向对象程序设计(一)课件_第1页
第1页 / 共25页
第3讲Java面向对象程序设计(一)课件_第2页
第2页 / 共25页
第3讲Java面向对象程序设计(一)课件_第3页
第3页 / 共25页
第3讲Java面向对象程序设计(一)课件_第4页
第4页 / 共25页
第3讲Java面向对象程序设计(一)课件_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《第3讲Java面向对象程序设计(一)课件》由会员分享,可在线阅读,更多相关《第3讲Java面向对象程序设计(一)课件(25页珍藏版)》请在金锄头文库上搜索。

1、1,第3讲 Java面向对象程序设计(一),对象与类 类的定义 对象的创建和使用,2,对象的概念,现实世界 任何事物都可以看成对象 对象具有物质基础和能力(人、汽车) 对象相互协作达成某些目标(人驾驶汽车从杭州到上海) 计算机世界(软件) 对象是用计算机语言对现实世界中对象的抽象表示 对象具有属性和方法,在计算机中占用一定的内存 对象相互协作完成一定的功能,3,类的概念,现实世界 类是对一些对象共性的抽象。包括这些对象共同的属性和能力。 软件世界 类是对对象的抽象定义。包括对象的属性和方法。对象是根据这种抽象定义来建造的,也可以说,类是对象的模板。,4,问题:在JAVA中怎么定义类?,我们的任

2、务 类有属性和方法,例如类:“学生”Student有学号studentNo,姓名name,性别gender等属性,有告知姓名tellName,改名changeName等方法。那么,在JAVA中我们怎样定义“学生”这个类呢?,5,所需知识:类的基本结构,类的基本构成:成员变量(成员域),成员方法,构造方法, 成员变量:可以是基本类型的变量或数组,或者是其他对象的引用变量 成员方法:进行数据处理等。是对象的能力 构造方法:用于生成该类的对象,6,所需知识:类的基本结构,JAVA中类定义的基本语法是 修饰符 class 成员变量声明 构造方法声明 成员方法声明 ,类体,类的声明,7,所需知识:类的声

3、明,Publicabstract|final class public指明任意类都可以访问这个类,若不指明public,则访问权限是默认的(允许同一个包中的类访问)。 abstract指明这个类是抽象类 final指明这个类不能被继承,8,所需知识:成员变量的声明,成员变量声明的完整格式如下: 访问权限修饰符 static finaltransientvolatile type variableName; 各种变量修饰符 访问权限修饰符public|protected|默认|private共四种 static 限定该变量为类变量,直接用 类名.变量名 就可 访问 final 指明该变量是常量,

4、其值不能被修改 transient 指明该变量是暂时变量,对象序列化时不能被保 存到外存上) volatile 用于多线程编程,指明访问该成员时将采用同步 机制,9,所需知识:类成员方法的定义,一般格式: ()throws 语句块 ,方法体,方法的声明,10,所需知识:方法声明中的修饰符,成员方法的修饰符用于指定该方法的访问权限,方法的类型等。 包括:访问权限修饰符 static final|abstract nativesynchronized 各种方法修饰符 访问权限修饰符public|protected|private共四种 static 限定该方法为类方法,直接用 类名.方法名 就可

5、调用 final 指明该方法不能被重写 abstract 指明该方法是抽象方法 native 指明该方法用其他语言实现 synchronized 用于控制多个并发线程对共享数据的访问,11,所需知识:方法的方法体,方法体是对方法的实现。 抽象方法没有方法体。 方法体包括方法中需要使用的局部变量的声明和所有合法的Java语句。 方法中声明的变量其作用域在该方法的内部。方法调用结束时,该局部变量不复存在。 局部变量与类的成员变量同名时,默认使用局部变量。若要使用类的成员变量,须在变量名前加上修饰符this。 方法的返回值类型不为void时,需要用 return 返回,否则直接用return返回(有

6、时也可省掉return)。,12,“this “引用,关键字this 用来指向当前对象本身。 例:class Date private int day, month,year; public Date getTommorrow( ) this.day+; ,13,构造方法的作用:实例化该类的对象,并对其进行初始化。Java中所有的类都有构造方法。构造方法的定义与类的成员方法相比有其特殊规定。 构造方法的定义格式: public|protected|private 类名(参数表) 注意: 方法名必须与类名相同。 不能带返回类型。,所需知识:类的构造方法,14,构造方法修饰符的含义 Public

7、任何类都可以创建该类的实例对象。 Protected 只有这个类的子类以及与该类在同一个 包中的类可以创建该类的实例对象。 Private 没有其他类可以实例化该类,此时,这个 类可能必须提供一个public方法,这个方 法可以可以构造该类的对象并将其返回。 如果没有指定构造方法的访问权限(也称为default或package),则只有与该类在同一个包中的类可以创建该类的实例对象。,所需知识:类的构造方法,15,如果在类定义中无构造方法,Java在编译时 会缺省加入构造方法。如 public 类名( ) ; 一旦在类中有一个自己声明的构造方法,则缺省 的构造方法将不被加到源程序中。*,所需知识

8、:缺省构造方法,16,一个类的定义实例,类定义: Class Employee String name; String designation; String department; void print( ) System.out.println(name+“is”+ designation+“at”+department); ,17,现在,请你解决我们前面提出的问题,回到任务,18,对象的创建和使用, 创建对象 引用数据类型的变量与基本数据类型的变量 使用对象 清除不用的对象,19,创建对象,对象是使用类的构造方法来创建的 格式 new 构造函数名(构造函数参数表) 如: new Empl

9、oyee(),20,对象创建过程,开辟内存空间(变量、方法体代码)及类成员 变量的初始化: 数值型:0; 布尔型:false; 引用型:null; 字符串型:null; 显式初始化:执行类成员声明时带有的简单 赋值表达式。如: Class Employee String name=“李四”; String designation=“销售员”; String department=“营销部”; void print( ) System.out.println(name+“is”+ designation+“at”+department); 执行构造方法。,21,引用数据类型的变量,和基本数据类型

10、的数据一样,对象也是数据,其类型是对应的类。将各种对象类型称为引用数据类型。 基本数据类型的变量存放的是数据本身。 引用数据类型的变量存放的是对对象的引用。(可以理解为对象的地址或指向对象的指针),22,对象的使用,对象+”.”+成员名来访问对象的成员变量和方法 对象可以用对象引用变量或对象本身 如: Employee emp=new Emp(); emp.name=“张三”; emp.print(); new Employee().print();,23,对象的回收,垃圾回收机制(garbage collection):Java运行环境当确定 某个对象不再被使用时,将其删除,并回收内存。 一

11、个对象在没有引用指向它时,可作为垃圾回收。 垃圾回收器:Java运行环境中的垃圾搜集器周期性地释放不用对象占用的空间。但其执行的优先级较低(在系统空闲时执行)。必要时可以执行System.gc()显式回收垃圾。 对象的最终化处理:finalize()方法,垃圾对象的该方法会被垃圾回收器调用。可以重写,但重写的finalize方法最后应该包含super.finalize()语句。,24,完整示例 Employee,25,第三次作业,编写一个学生类,包括学号、姓名、性别、年龄、专业等属性。包含改名、长一岁,告知自身信息等方法。在主方法中产生三个学生对象,分别调用相应的方法,并输出他们的信息。 补充课本Page55 第2、4、5、6、8题,,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号