当前位置:首页 » 编程软件 » 面向对象编程指南

面向对象编程指南

发布时间: 2024-03-24 08:36:37

⑴ 什么是面向对象的编程语言啊

面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言。指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。

其特点如下:

(1)任何事物都是对象。

(2)运行期的基本实体,也是一个包括数据和操作这些数据的代码的逻辑实体。

(3)每个对象可以有自己的内存空间包含其他对象。

(4)类是具有相同类型的对象的抽象。一个对象所包含的所有数据和代码可以通过类来构造。

(5)程序由一系列的对象组合,它们通过发送消息告诉彼此做什么。

(6)封装是将数据和代码捆绑到一起,避免了外界的干扰和不确定性。

(7)一个特定类型的所有对象都可以接受同样的消息。

(8)继承是让某个类型的对象获得另一个类型的对象的特征。

(9)每一个对象都有类型。

(10)多态是指不同事物具有不同表现形式的能力。

注意事项:

Java是一门面向对象编程语言,具有功能强大和简单易用两个特征。

C语言是面向过程的程序设计语言,与C++,Java等面向对象的编程语言有所不同。

VB是一种面向对象的可视化程序设计语言,采取了事件驱动的编程机制。

(1)面向对象编程指南扩展阅读:

面向对象编程的优点:

易维护 :可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块。

易扩展 :通过继承,我们可以大幅减少多余的代码,并扩展现有代码的用途;

模块化 :封装可以定义对象的属性和方法的访问级别,通过不同的访问修饰符对外暴露安全的接口,防止内部数据在不安全的情况下被修改。

方便建模:很多时候可以使用现实生活中对象的概念抽象后稍作修改来进行建模,极大方便了建模的过程。

⑵ 面向对象的程序设计语言是一种什么语言

面向对象程序设计语言是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。

面向对象程序设计语言中提供了类、继承等成分,有识认性、多态性、类别性和继承性四个主要特点。

面向对象设计的结果,既可以用面向对象语言实现,也可以用非面向对象语言实现。面向对象程序设计语言本身就支持面向对象概念的实现,其编译程序可以自动地实现面向对象概念到目标程序的映射。

(2)面向对象编程指南扩展阅读

面向对象语言刻画客观系统较为自然,便于软件扩充与复用。有四个主要特点:

(1)识认性,系统中的基本构件可识认为一组可识别的离散对象;

(2)类别性,系统具有相同数据结构与行为的所有对象可组成一类;

(3)多态性,对象具有惟一的静态类型和多个可能的动态类型;

(4)继承性,在基本层次关系的不同类中共享数据和操作。

参考考资料来源:网络-面向对象语言

参考考资料来源:网络-面向对象程序设计语言

⑶ 如何学习面向对象编程

尽管我们都是从OOP发展而来,事实上,真正的面向对象来自于OOD。没有OOD的过程,就无法真正的面向对象。
书上那些小例子只不过是在展示“如何OOP”的手段,也就是在告诉大家“面向对象的语言有哪些特点”,而并没有回答“什么是面向对象”以及“为什么要面向对象”。
事实上,这种小程序永远也不能体现出“为什么要面向对象”。面向对象与传统的面向功能与面向数据的开发相比,最大的优势在于业务逻辑的可重用性。传统的开发最容易重用的是数据结构和底层代码,而上面的调用代码则很难重用,而面向对象则专注于如何另维护了业务逻辑的调用代码更容易地被其它项目或是后继项目使用。
同时,面向对象的开发也有利于提高可移植性。我前面说过,传统的开发成果越是底层的代码可重用性就越高,但如果牵涉到大量OS相关的内容时——比如GUI,则越是底层的调用就越难以移植,这就形成了一个矛盾。而面向对象的方法解决了调用代码的可重用性,也就顺带提高了代码的可移植性。

⑷ 什么是面向对象的程序设计思想

一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。

面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。

面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。



(4)面向对象编程指南扩展阅读

面向对象程序设计的优点:

1、数据抽象的概念可以在保持外部接口不变的情况下改变内部实现,从而减少甚至避免对外界的干扰。

2、通过继承大幅减少冗余的代码,并可以方便地扩展现有代码,提高编码效率,也减低了出错概率,降低软件维护的难度。

3、结合面向对象分析、面向对象设计,允许将问题域中的对象直接映射到程序中,减少软件开发过程中中间环节的转换过程。

4、通过对对象的辨别、划分可以将软件系统分割为若干相对为独立的部分,在一定程度上更便于控制软件复杂度。

5、以对象为中心的设计可以帮助开发人员从静态(属性)和动态(方法)两个方面把握问题,从而更好地实现系统。

6、通过对象的聚合、联合可以在保证封装与抽象的原则下实现对象在内在结构以及外在功能上的扩充,从而实现对象由低到高的升级。

⑸ 什么叫做面向对象编程

简记为OOP)立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。有人可能会说php不是一个真正的面向对象编程的语言, PHP 是一个混合型 语言,你可以使用面向对象编程,也可以使用传统的过程化编程。然而,对于大型项目的开发,你可能想需要在PHP中使用纯的面向对象编程去声明类,而且在你的项目开发只用对象和类。随着项目越来越大,使用面向对象编程可能会有帮助,面向对象编程代码很容易维护,容易理解和重复使用,这些就是软件工程的基础。在基于Web的项目中应用这些概念就成为将来网站成功的关键。
对象(Object)是问题域或实现域中某些事物的一个抽象,它反映此事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。 关于对象要从两方面理解:一方面指系统所要处理的现实世界中的对象;另一方面对象是计算机不直接处理的对象,而是处理相应的计算机表示,这种计算机表示也称为对象。简单的来说,一个人就是一个对象,一个尺子也可以说是个对象。当这些对象可以用数据直接表示时,我们就称他为属性,尺子的度量单位可以是厘米,公尺或英尺,这个度量单位就是尺子的属性。
在PHP里我们可以定义一个类,类(Class)就是指变量与一些使用这些变量的函数的集合。PHP是一种松散类型的语言,所以通过类型重载不起作用,通过参数的个数不同来重载也不起作用。 有时在面向中重载构造函数非常好,这样你可以通过不同的方法创建对象(传递不同数量的参数)。在PHP中就是通过类来实现的。
在PHP中是通过类来完成信息封装的,在PHP中定义类的语法是:
<?php
class Class_name // 在面向对象编程类中,习惯上类的第一个字符为大写,并且必须符合变量的命名规则。
{

//函数与变量的集合

}
?>
在定义类时你可以按自已的喜好的格式进行定义,但最好能保持一种标准,这样开发起来会更有效些。
数据成员在类中使用"var"声明来定义,在给数据成员赋值之前,它们是没有类型的。一个数据成员可以是一个整数,一个数组,一个相关数组(Associative Array)或者是一个对象。
下面是一个类定义的实际例子:
<?php
class Student
{
var $str_Name; //姓名
var $str_Sex; //性别
var $int_Id; //学号
var $int_English; //英语成绩
var $int_maths; //数学成绩
}
?>
这是一个很普通定义类的简单例子,用于显示学生的学习成绩,类名为Student,Student类包涵了一个学生的基本属性:姓名、性别、学号、英语成绩和数学成绩。
function我们称之为在类中被定义的函数,在函数中访问类成员变量时,你应该使用$this->var_name,其中var_name指的是类中被声明的变量,否则对一个函数来说,它只能是局部变量。 我们先定义一个Input()的函数,用来给实例中的对象赋以初值:
function Input ( $Name, $Sex, $Id, $Englis, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$this->int_Englis=$English;
$this->int_Maths=$Maths;
}
现在我们再定义一个叫“ShowInfo()”的函数,用于打印学生的基本情况:
function ShowInfo() //定义ShowInfo()函数
{
echo (“姓名:$this->str_Name<br>
”);
echo (“性别:$this->str_Sex <br>
”);
echo (“学号:$this->int_Id <br>
”);
echo (“英语成绩:$this->int_English <br>
”);
echo (“数学成绩:$this->int_Maths <br>
”);
}

而定义好的类则必须使用new关键词来生成对象:
$A_student=new Student;
例如我们要为一个名为$Wing的对象创建实例,并进行赋值,可以使用下面的代码:
$Wing =new Student; //用new关键词来生成对象
$Wing ->Input (“Wing”,”男”,33,95,87);
//分别输入Wing的姓名、性别、学号、英语成绩、数学成绩,其中姓名和性别是字符型变量,所以需要用双引号,其它为数值型变量则不需要。
通过下面这段完整的源代码,我们就可以很清楚的看到类在PHP是怎么被运用的:

<?php

class Student
{
var $str_Name;
var $str_Sex;
var $int_Id;
var $int_English;
var $int_maths;

function Input ( $Name, $Sex, $Id, $English, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$this->int_English=$English;
$this->int_Maths=$Maths;
}
function ShowInfo()
{
echo (“姓名:$this->str_Name<br>
”);
echo (“性别:$this->str_Sex <br>
”);
echo (“学号:$this->int_Id <br>
”);
echo (“英语成绩:$this->int_English <br>
”);
echo (“数学成绩:$this->int_Maths <br>
”);
}
}

$Wing = new Student;
$Wing->Input (“Wing”,”男”,33,95,87);
$Paladin = new Student;
$Paladin->Input (“paladin”,”女”,38,58,59.5);

$Wing->ShowInfo();
$Paladin->ShowInfo();

热点内容
c语言中的除号 发布:2024-11-15 16:51:09 浏览:215
安卓ops是什么文件 发布:2024-11-15 16:32:18 浏览:927
双线性插值算法c 发布:2024-11-15 16:30:45 浏览:866
c语言和vc的区别 发布:2024-11-15 16:19:23 浏览:118
linux是免费的吗 发布:2024-11-15 15:53:44 浏览:617
多控存储 发布:2024-11-15 15:52:42 浏览:283
一年级数学分解算法 发布:2024-11-15 15:41:08 浏览:411
安卓个人热点怎么分享 发布:2024-11-15 15:40:16 浏览:264
垫钱解压 发布:2024-11-15 15:38:54 浏览:336
miui4相当于安卓什么系统 发布:2024-11-15 15:37:54 浏览:709