4.6 面向对象的表示法 人工智能语言有Lisp(函数型)、Prolog(逻辑型)和Smalltalk(面向对象型)。Smalltalk语言是基于对知识的面向对象表示的。 人们认识世界是以世界划分为一些事和物为基础的,这里的物指物体,事指物体间的联系。面向对象表示法中的对象指物体,消息指物体间的联系,通过发送消息使对象间相互作用来求得所需的结果。 对象是由一组数据和与该组数据相关的操作构成的实体。如一个对象叫me,会有一组表征自身的数据: name:Li ming age:20 相应地操作为 birthday(岁数):每年实现age+1 消息是由(object,Selector,arguments)表示。其中object是消息要发往的对象,Selector是要求该对象完成的操作,arguments是Selector可选的参数。 在面向对象表示中类和类继承是重要概念。类由一组变量和一组操作组成,它描述了一组具有相同属性和操作的对象。每一个对象都属于某一类,每个对象都可由相关的类生成,类生成对象的过程就是例化。一个类拥有另一个类的全部变量和操作,这种拥有就是继承,继承是面向对象表示法的主要推理形式。 |