java 面向对象程序设计浅谈一

众所周知,面向对象程序设计是经历了历史的考验后留下来的现在使用最普遍的程序设计方法,提到程序设计,先来过一下历史上有一定影响的程序设计方法.

一、结构化程序设计方法学

   自顶向下,逐步求精;其程序结构是按功能划分为若干个基本模块,这些模块形成一个树状结构;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。  

结构化方法学具有以下特点:

   1.阶段性。  

   2.推迟实施。

   3.文档管理。

C语言等是面向结构 化的程序设计语言。

二、面向对象程序设计方法学

面向对象程序设计吸取了结构化程序设计的一切优点,又考虑了现实世界与面向对象解空间的映射关系,它所追求的目标是将现实世界问题的求解尽可能的简单化。

   面向对象程序设计将数据及对数据的操作放在一起,作为一个相互依存、不可分割的整体来处理,它采用数据抽象信息隐藏技术。它将对象及对对象的操作抽象成一种新的数据类型,并且考虑不同对象之间的联系和对象类的重用性。

下面我将就本人了解的一些面向对象基本概念和大家分享。希望对大家有所帮助。

一、对象的基本概念

面向对象=对象++继承+消息通信

对象系统最突出的特性就是封装性、继承性和多态性,衡量某一种程序设计语言,看它是否是面向对象的程序设计语言,主要看它是否具有以上三种特性。 像C++,C#,java等都是这样的程序设计语言。

二、类与对象

类(class)是对具有相同属性和服务的一个或一组对象的抽象定义。

类与对象是抽象具体实例的关系,一个具体的对象被称做类的一个实例

是否建立了丰富的类库是衡量一个面向对象程序设计语言成熟与否的一个重要标志。

对象(object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,是类的实例

面向对象的软件系统是由对象组成的,复杂的对象是由比较简单的对象组合而成。也就是说,面向对象方法学使用对象分解取代了传统方法的功能分解

对象的属性和方法称为这个对象的“成员”。它是构成对象的主要部分。

类可以说是对象的蓝图(blueprint)

三、对象三要素

    对象三要素:对象标志、属性和服务

对象标志:也就是对象的名字,供系统内部唯一地识别对象。

属性:也称状态或数据,用来描述对象的静态特征。在某些面向对象的程序设计语言中,属性通常被称为成员变量或简称变量

服务:也称操作、行为或方法等,用来描述对象的动态特征。某些面向对象程序设计语言中,服务通常被称为成员函数简称函数

 

封装:对象的一个重要原则,目的是使对象的定义与实现分离。它有两层含义:第一,对象是其全部属性和全部服务紧密结合而形成的一个不可分割的整体;第二,对象是一个不透明的黑盒子,表示对象状态的数据和实现操作的代码都被封装在黑盒子里面。使用一个对象的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法。从外面看不见,更不可能从外面直接修改对象的私有属性。

l          处于私有段(private)changemark,这是不向外公开的功能,只供对象自己使用。

l          处于保护段(protected)getmark,这是只向外界宣布的功能,只对其派生类对象提供服务。

l          处于公有段(public)getnamegetmajor,这是向所有外界公开的功能,它可以响应外界对象的请求。

对象(object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,是类的实例

面向对象的软件系统是由对象组成的,复杂的对象是由比较简单的对象组合而成。也就是说,面向对象方法学使用对象分解取代了传统方法的功能分解                                                                                                                                                                                                                       

   四、继承(inheritance)和多态(polymorphism)性  

继承:是面向对象程序设计语言不同于其它语言的主要特点,是之间共享属性和操作的机制。其定义为:特殊类(或称子类、派生类)的对象拥有其一般类(或称父类、基类)的全部属性与服务,称做特殊类对一般类的继承(分为单继承多继承)。在面向对象的方法学中,继承是提高软件开发效率的重要原因之一。

多态性:指对象在收到消息时,要给予相应,对象收到同一个消息后可能产生完全不同的结果。

总体上分为:编译时的多态和运行时的多态。

参数多态(使用函数重载来实现)是应用最广泛的多态,是最纯的多态。

多态性不仅增加了面向对象软件系统的灵活性,进一步减少了信息冗余,而且显著提高了软件的可重用性和可扩充性。

在定义函数重载时,函数名字相同,但函数所带的参数的个数或类型必须有所区别,否则就会出现二义性。

习惯称被继承的类为“父类”,而继承的类称为“子类”。

在面向对象系统中除了函数可以重载外,运算符也可以重载。java也是这样。

注意:编译时的多态一般由函数重载来实现,而运行时的多态由虚函数来使用。

综上,前面说的都是一些面向对象的理论。现在说说java的面向对象程序设计。

一、定义类

类的定义已经用到很多,比如一个动物的类,用UML的表示法如图:

animal
+legs:int

+eat()

+move()

 

 

定义了三个成员,一个是用来记录有几只脚的legs属性,属性名称后面跟一个冒号,然后有个int表示该属性的数据类型为int类型,另外两个是方法,一个是吃东西的方法eat,另一个是行动的方法move.每个成员前面有个加号“+”表示这个成员使用public修饰符。在java中定义这个类为:

 

public class  animal
{
public int
 legs;
public void
 eat()
{
System.out.println(
"Eatin...."
);
}


public void move(){
System.out.println(
"Moving..."
);
}


}

 

 由于时间有限,目前就只写到这儿了,下篇继续

 

Java是一种面向对象的编程语言,设计模式可以帮助我们更好地编写面向对象的代码。在JavaWeb项目中,设计模式可以帮助我们解决一些常见的问题,比如复杂的业务逻辑、代码重用、可扩展性等等。 下面是一些常见的设计模式在JavaWeb项目中的使用: 1. MVC模式:MVC模式是一种常见的设计模式,它将应用程序分为三个部分:模型、视图和控制器。在JavaWeb项目中,我们可以使用MVC模式来分离业务逻辑和用户界面,并且可以更容易地进行修改和维护。 2. 工厂模式:工厂模式是一种创建型设计模式,它可以帮助我们更好地组织代码并提高代码的可复用性。在JavaWeb项目中,我们可以使用工厂模式来创建对象,并且可以根据需要动态地创建不同的对象。 3. 单例模式:单例模式是一种创建型设计模式,它保证了一个类只有一个实例,并提供了一个全局访问点。在JavaWeb项目中,我们可以使用单例模式来管理共享资源,比如数据库连接池。 4. 观察者模式:观察者模式是一种行为型设计模式,它定义了一种一对多的依赖关系,当一个对象的状态发生改变时,它的所有依赖对象都会得到通知并自动更新。在JavaWeb项目中,我们可以使用观察者模式来实现事件驱动的编程。 5. 装饰器模式:装饰器模式是一种结构型设计模式,它允许我们动态地添加或修改一个对象的功能。在JavaWeb项目中,我们可以使用装饰器模式来扩展一个类的功能,而不需要修改它的原始代码。 当然,在JavaWeb项目中还有很多其他的设计模式可以使用,具体使用哪些设计模式需要根据具体的情况而定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值