每个java小应用程序都得继承,Java(一)串讲笔记……第3章面向对象编程基础..doc...

Java(一)串讲笔记 ……(3) 第3章面向对象编程基础

面向对象的基本概念

抽象:抽象(Abstraction)是程序设计中最经常使用的技术之一,因为抽象是有效控制程序复杂性的重要手段。程序设计中利用抽象,在面向过程阶段,系统按函数和模块进行设计。在面向对象阶段,利用抽象按类设计。类是目前支持抽象的最好工具。

对象:在面向对象语言中,对象的名称用于程序引用对象,对象的成员变量,用于存储对象的状态信息,对象的方法用于描述对象的行为。

消息:在程序系统中,对象之间的交互通过相互发送消息(Message)实现。

类:把同一类对象的所有共同的属性和行为放在一起描述。这种声明对象共有属性和行为的机制称为类。类的声明定义了类的所有对象的共有属性和方法。类是对一组相同对象的描述,类概括了同类对象的共有性质:数据和方法。类的每个对象都有自己的标识,但都具有相同的一组属性和提供相同的一组方法。

继承:继承(Inheritance)就是在已有类的基础上,扩充属性,或扩充与改写其某些方法,生成新的类,这个方式称为继承。继承定义的类称为子类,被继承的类称为超类(父类),子类自动含有父类具有的属性和方法。继承具有传递性。继承的最大好处是对象能按层次划分,并在子类中,与父类相同的属性和方法可以不再重复声明。

多态性

多态性(Polymorphism)有多种表现形式,这里所说的多态性是指类型适应性多态性,这来自继承,不同继承层次的对象同样的方法有不同的实现。类型适应性多态要求能自动按对象的实际类型正确调用它的方法。

类型适应性的多态性需要采用动态联编(DynamicBinding)技术实现。

联编是将发送给对象的消息与含执行该消息方法的对象连接起来。当联编在编译和连接阶段实现时,这样的联编过程称为静态联编;当联编推迟至运行时间实现时,该联编过程称为动态联编。动态联编是面向对象语言必须具有的一种能力,是实现上述多态性的技术基础。

Java的类和对象

类:类是一种类型,类封装对象的属性和方法,是同一类对象的模板。Java程序的主要部分是描述类。

类的声明

class 类名//声明新类的基本格式{

类体

成员变量

成员变量定义的一般形式为:[修饰字] 类型 变量名;

其中,修饰字可以空缺,修饰字用于对成员变量限制其访问权限:private、proected、public和友好的。

成员变量对类内定义的方法都有效。类的方法也可定义变量,这种变量称为局部变量,局部变量只在定义它的方法中有效。

方法

方法给出对象的行为,方法声明的一般形式如下:

返回值类型 方法名(类型 参数名, ... ,类型 参数名)

方法体

如果方法无返回值,就用void关键字。如果某方法中的参数名或局部变量名与类的成员变量名相同,则成员变量在这个方法内暂时被隐藏。如果成员变量在方法内被隐藏,又在方法中要引用成员变量,必须使用this,this表示调用该方法的当前对象。

在Java程序中,类的方法可以重载。方法重载是指在一个类中定义多个有相同名字的方法,但这些方法或者参数个数不同或者按顺序参数的类型不同。

构造方法

构造方法是一种特殊的方法,这种方法的名与它的类名相同,并且不返回结果,也不写上void关键字。

构造方法的作用是创建类的对象,并给对象初始化。程序运行时,当有对象要创建时,由系统自动调用构造方法。如果类的声明没有定义构造方法,系统就增补一个没有参数的默认构造方法。

对象

类被声明后,就可用类创建对象,被创建的对象称为类的实例。程序使用对象需依次经历4个步骤:声明对象、创建对象、使用对象和撤销对象。

声明对象

由于类是一种引用类型,声明对象只是命名一个变量,这个变量能引用类的对象。由于对象还没有创建,

所以也暂不要为对象分配内存。

创建对象

创建对象就是为对象分配内存,为对象分配内存也称类的实例化。一般形式为:new 构造方法([参数表])

对象创建的两个步骤也可一起完成,一般格式为: 类名 对象名=new构造方法([参数表])

对象的内存模型

Java语言将类型分成基本类型和引用类型两种。在Java语言中,数组类型和类类型是引用类型。程序访问引用类型的变量采用间接访问方式。

使用对象

程序使用对象有多种情况:或为对象设置状态、或获取对象的状态、或改变对象的状态、或应用对象的某种方法。前三种需要访问对象的成员变量,最后一种要调用对象的方法。程序通过操作符“.”对某对象的成员变量进行访问和方法调用。一般形式为: 对象名.成员变量 对象名.方法([参数表])

实例变量和类变量

类的成员变量又分为实例变量和类变量。在定义成员变量时,用关键字static修饰的是类变量,定义时未用static修饰的是实例变量。

类变量是类的所有对象共享

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值