文档介绍:第三讲面向对象的编程基础
目标
面向对象的基本概念。
类的声明以及成员变量、方法的声明和访问权限。
对象的创建和使用。
面向对象的基本特征。
类
类是具有共同属性和行为的对象的抽象。
类可以定义为数据和方法的集合。
对象具有特殊属性和行为方式的实体。
类
对象
抽象
实例化
封装的实体=数据+方法
操作或行为
属性或状态
方法
数据或变量
类的定义
类的定义格式为:
[类修饰符]class name {
type variable1;
…
type variableN;
 
type methodname1(parameter-list){
//方法体
}
…
type methodnameN(parameter-list){
//方法体
}
}
成员变量,用来刻画属性
成员方法,用来刻画功能
例:表示梯形的类的定义:
public class Echelon
{
float up,down,hight,laderArea;
float Area()
{
laderArea=(up+down)*hight/2;
return laderArea;
}
void changeup(float h)
{
hight=h;
}
}
成员变量与局部变量
方法体外定义部分所定义的变量为成员变量
方法体中定义部分所定义的变量为局部变量
变量可以使任何数据类型,包括对象
对象变量在使用前必须初始化
成员变量:整个类;局部变量:方法体
可以使用修饰符来控制变量的作用范围,成员变量通常是私有的。
格式:<修饰符><数据类型><名称>[=<初值>]
值得注意的问题
成员变量与它在类中书写的先后位置无关。
如果成员变量与局部变量名字相同,则成员变量被隐蔽,即这个成员变量在这个方法内暂时失效;如果要在该方法中使用成员变量,必须使用关键字this。如:
class Triangle{
float sideA, sideB, lengthSum;
void setSide(float sideA, fload){
this. sideA= sideA;
this. sideB=sideB;
}
}
方法的定义与调用
方法定义格式如下:
[<修饰符>] <类型> <方法名称>
([<参数行>]) [throws<异常名称>]
{
<方法体>
[return(返回值);]
}
可为private、public、protected和default
与return语句返回值类型相同。
符合标识符定义规则。
若方法的类型为void,则无return语句。
int min3(int x,int y,int z){
int small;
// (x,y)返回x,y中较小数
small=(x,y);
small=(small,z);
return(small);
}
实例方法与类方法
方法申明时,方法类型前不加static的为实例方法,加static的位类方法,static需放在方法的类型前面。例:
class A{
int a;
float max(float x,float y)
{……}
static float jerry()
{……}
static void String speak(String s)
{……}
}
值得注意的问题
对成员变量的操作只能放在方法中,方法可以对成员变量和自己定义的局部变量进行操作,在定义类的成员变量时可以同时赋予初值。
实例方法可以对类变量操作也可以对实例变量操作,而类方法只能对类变量进行操作。
一个类中的方法可以相互调用,实例方法可以调用该类中的其他方法,类中的类方法只能调用该类中的类方法,不能调用实例方法。