欢迎来到天天文库
浏览记录
ID:50325340
大小:135.00 KB
页数:45页
时间:2020-03-08
《Java语言基础教程 教学课件 作者 沈昕 05.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章面向对象的程序设计5.1自定义类5.4接口5.2包和修饰符5.3类的继承和多态5.1自定义类5.1.1自定义类在Java语言中,声明类的一般格式为:[修饰符]class类名[extends父类名][implements接口名]{声明类的变量声明构造方法声明类的方法}1.声明类(1)修饰符关键字class前的修饰符用来限定所声明的类的特性。现阶段,类的修饰符一般为public,它表示该类可以被任何对象或其他类来访问、调用。关于修饰符将在后面具体介绍。(2)类的父类如果一个类是另一个类的子类,需要继承父类的某些功能时,就要用extends关键字来指明类的父类。(3)实现接口在Java语言
2、中,还有一个在语法上类似于类的概念,叫做接口,为了能够在类中使用接口,就需要使用关键字implements。构造方法(ConstructorMethod)也称为构造函数,是一种特殊的方法。在创建对象时,使用关键字new调用这个对象所属类的构造方法来完成对象实例变量的初始化。构造方法的格式为:public类名(参数列表){语句体}2.构造方法一般来说,构造方法具有以下几个特点。(1)构造方法的方法名与其所在类的名称相同。(2)虽然构造方法没有返回值,但是也不能有void关键字。(3)构造方法的修饰符总是public。(4)构造方法的主要作用是完成对类对象实例变量的初始化。(1)实例变量(In
3、stanceVariable)实例变量用来存储某个类对象的状态值。它必须在类内、任何方法外被声明,一般位于整个类语句体的最前端。其修饰符可以是public或者private,但是不能使用static。实例变量的使用范围是整个类,也就是说可以在类中的任意方法内被使用。实例变量是依据其对象而存在的,运行程序在创建对象的同时,创建了其实例变量,当程序运行完成时,对象消失,其实例变量也同时消失。3.类的变量(2)静态变量(StaticVariable)用修饰符static修饰的变量称为类静态变量,也叫做静态变量或者类变量。静态变量是类的变量,不属于任何一个类的具体对象实例。它不保存在某个对象实例的
4、内存空间中,而是保存在类的内存空间的公共存储单元中。也就是说,不论一个类具有多少个对象,静态变量只有一个,任何一个类的对象访问它,取得的都是相同的数值。同样地,任何一个类的对象去修改它,也都是在对同一个内存单元进行操作。静态变量可以通过类名直接访问,也可以通过对象来调用,其格式如下。采用以下两种方法取得的结果是相同的。类名.静态变量对象名.静态变量(3)最终变量(FinalVariable)在编写程序时,可以给某些经常要使用的具有特殊含义或者内容复杂的常量,取一个类似于变量名的标识符,这样就可以通过使用这个变量名称来引用其对应的常量,而不是每次直接输入常量数值。这种做法的主要目的是使程序更
5、加清楚,方便他人阅读、理解。使用修饰符final修饰的变量是最终变量,其保存的数据在程序的整个执行过程中都不会改变。通常,在final前面再加上修饰符static,那么这个变量的实际含义就是常量,其格式为:staticfinal类型常量名=初始值;(4)易失变量(VolatileVariable)如果一个变量被volatile修饰符所修饰,说明这个变量可能同时被几个线程所控制和修改,即这个变量不仅仅被当前程序所掌握,在运行过程中可能存在其他未知的程序操作来影响和改变该变量的值。在使用过程中,应该特别留意这些影响因素。(5)瞬态变量(TransientVariable)把实例变量(不能修饰类
6、变量)标识为transient,表明它是一个瞬态变量。在串行化对象时将忽略它。串行化是指把对象的实例变量的值写入特殊类型的IO流保存到文件,以便需要时使用。串行化是Java中很实用的功能之一。(1)实例方法(InstanceMethod)实例方法属于每个对象,只能通过类的对象调用。实例方法用来定义某个类的行为,也就是说类的对象所能进行的操作。与实例变量一样,实例方法的修饰符可以是public或者private,但是不能是static。如果希望实例方法可以在类之外被访问,则使用public;如果希望实例方法只在类内被访问,则使用private。4.类的方法(2)静态方法(StaticMeth
7、od)如果一个方法总是以相同的方式运行,即它的运行与类的任何实例没有关系,其行为与对象的状态(实例变量的值)无关,就应该用static修饰该方法,使其成为静态方法。与静态变量类似,静态方法的本质是属于整个类的,而不属于某个实例对象。因为静态方法属于类本身,所以只要声明了类,它的静态方法就存在,就可以直接使用类来调用。需要调用某个静态方法时,可以使用其所属的类的名称直接调用,也可以用类的某个具体的对象名调用,其格式为:类名
此文档下载收益归作者所有