文档详情

JAVA课件第四讲 类及对象.ppt

发布:2017-06-15约5.83千字共33页下载文档
文本预览下载声明
* 第四讲 类、对象 1.面向对象概述 2.类与类成员(变量) 3.对象及其创建与应用 4.类的成员方法 1.面向对象概述(三大特性) 封装性:是指将描述某种实体的数据和基于这些数据的操作集合到一起,形成一个封装体。封装体内数据受到保护,通过与外界的接口实现信息交流。 继承性:继承反映了两个类之间的一般性和特殊性的关系。当一个类拥有另一个类的所有数据和方法时,称这个类继承了另一个类,这两个类具有继承关系。继承分为单重继承和多重继承。JAVA不支持多继承,但通过接口可以弥补不支持多继承而带来的子类不可使用多个父类成员的不足。 多态性:多态性是指程序中出现的同名不同意现象 2.类与类成员(变量) 类是java程序的基本单位,一种自定义的数据类型,又称为类类型。它是同种对象的抽象/模板,对象称为类的实现/实例。 类的定义格式 [修饰符] class 类名 [extends 父类名] [implements 接口名] { 类的成员变量说明 类的方法定义 } 说明: 关键字class声明一个新类,声明不是创建。 关键字extends说明定义的新类是哪个已存在类的子类。父类可以是java语言库中定义的类,也可以是自己定义好的类。 关键字implements,说明当前定义的新类中实现那些接口所定义的功能和方法。 类修饰符用来说明类的作用域和其它性质,有4种: public:说明该类为公共类,它可以被其他类所使 用。一个文件中最多只能有一个public类。 abstract:使用该修饰符的被称为抽象类。抽象类是一种没有具体对象的概念类。不能创建实例。 final:说明该类不能有子类,故称为最终类。这种类是用来完成某种标准功能的类。final和abstract不能用来同时修饰一个类。 默认说明:规定该类只能被同一个包中的类使用,而不能被其他包中的类所访问。 类体的内容:由两部分构成:一部分是变量的定义,用来刻画属性;另一部分是方法的定义,用来刻画功能。 例:定义一个描述学生3门课成绩的类。 class Student { String name,stuNumber; double score1,score2,score3; name=“zhangsan”; void setBase(String s1,String s2){ name=s1; stuNumber=s2; System.out.println(name+ +stuNumber); } double setScore(double d1,double d2,double d3){ double d; score1=d1; score2=d2; score3=d3; d=d1+d2+d3; return d; } } //错,只能是变量定义语句,不能有其它语句。但可以把定义与赋值合并。 变量 成员变量可以是简单变量,也可以是某个类的对象,还可以是数组和其它复杂结构。 成员变量的定义格式 简单成员变量的定义格式: [修饰符] 变量类型 变量名 [ =初值]; 对象成员的定义格式: [修饰符] 类名 对象名 [=new 类名 (实参表)]; 变量的修饰符:有访问控制修饰符和非访问控制修饰符。 非访问控制修饰符: (1)静态变量 static。静态变量属于类,属于所有对象的共享变量。静态变量的引用可以使用类名,也可以使用对象。例:Student.java中加入学生个数。 (2)最终变量 final。最终变量就是常量,不允许修改,最终变量通常被说明为static。 (3)易失变量 volatile。被volatile修饰的变量可能同时被多个线程所控制和修改。 //修饰符static练习,文件名Stu.java class Student { String name,stuNumber; static int count; //学生个数 double score1,score2,score3; void setBase(String s1,String s2){ name=s1; stuNumber=s2; System.out.println(name+“:+s1); } double setScore(double d1,double d2,double d3){ double d; score1=d1; score2=d2; score3=d3; d=d1+d2+d3;
显示全部
相似文档