面向对象之对象

原创 2015年07月08日 18:03:48

实例化

实例化就是给,数据成员分配内存,构造对象。对象的成员函数和普通函数的区别就是,成员函数有个指向当前对象的this指针,可以访问对象的成员变量,其依赖于对象。静态函数就更像一个全局函数,没有this指针,可以通过类名直接访问,可以被对象的成员函数访问,静态函数只能访问类的静态成员。这些可访问属性是由编译器来实现的,编译之后就没有对象、成员这些东西了,都是数据和方法。

定义

在面向对象的编程中,通常把用类创建对象的过程称为实例化,其格式如下:
类名 对象名 = new 类名(参数1,参数2...参数n)
(这里,“类名”这个类名实例化成了“对象名”这个对象)

例子

Date date=new Date();

就是用日期类创建了一个日期的对象,就叫对象的实例化。
多数语言中,实例化一个对象 其实就是在内存中开放一个空间 用于存储新的产物,即对象。

什么是对象

(object)是一件事、一个实体、一个名词,可以获得的东西,可以想象有自己的标识的任何东西。对象是类的实例化。一些对象是活的,一些对象不是。
比如一辆汽车一个人、一间房子、一张桌子、一株植物、一张支票、一件雨衣。 概括来说就是:万物皆对象。
面向对象(ObjectOriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
ASP动态网页中,对象是一个抽象的概念,是要操作的目标。比如,在现实生活中,电脑就是我们搜寻资料的一个对象,他具有外观、操作系统、价格等等特点,这在对象概念中被称为属性,而利用这个电脑玩游戏、看电影、查找资料等用途,这就对应于对象里的方法,另外,主板、CPU、显卡、键盘等等组件,我们可以称作对象的集合。
在ASP动态网页中,对象的特点归结起来有三个:属性、方法、集合。

面向对象基本概念

(1)类
  具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
  类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
  类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。
(2)类的结构
  在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。
  ①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
  ②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。
(3)对象
  对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
(4)对象的状态和行为
  对象具有状态,一个对象用数据值来描述它的状态。
  对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
  对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。

在面向对象的语言中,程序员们就将一类有共同属性的事务封装成一个类,如果我们要说一个具体的哪一个事物,我们就需要对这个类作实例化,实例化时会用到new关键字来生成这个类的一个具体的对象。




JavaScript面向对象

  • 2017年12月11日 17:13
  • 13.75MB
  • 下载

lua中的类功能(面向对象2)

我项目中,lua使用类功能的方法: --提供lua中class功能,目前有集成,多态的功能,析构需要实现 local _class={} function bbclass(super) --参数s...

类与面向对象知识点归纳整理

  • 2017年12月08日 16:28
  • 1.55MB
  • 下载

C++ 面向对象(四)—— 多态 (Polymorphism)

为了能更好的理解本节内容,你需要清楚的知道怎样使用指针pointers 和类之间的继承 inheritance between classes。建议如果你觉得以下这些表达式比较生疏的的话, 请复习指定...

面向对象的3个基本要素和5个基本设计原则(整理)

面向对象的3个基本要素:封装、继承、多态  面向对象的5个基本设计原则:  单一职责原则(Single-Resposibility Principle)      其核心思想为:一个...

BJUT面向对象作业

  • 2017年11月05日 15:43
  • 115KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:面向对象之对象
举报原因:
原因补充:

(最多只允许输入30个字)