Eiffel 引介 Part V (2)

翻译文档 专栏收录该内容
74 篇文章 0 订阅

5.5 常量

使用如下语法形式声明常量:

constant_name : CLASS_NAME is value

比如:

pi : DOUBLE is 3.14159

base : INTEGER is 10

hello : STRING is “hello”

 

5.6 不需要 make routine 的对象创建过程

l         简单的类别不需要特定的创建程序(creation routine),也是很常见的情况。

l         比如,一个只用来提供标准的数学常量及函数的类别,并不需要作特定的初始化动作。

l         当然,我们总是可以为类别提供一个空的 make routine,而这在 Eiffel 中并不是必需的。我们可以完全忽略 creation 子句。

class BASIC_MATH

-- No creation clause

feature

  pi : REAL is 3.14159

  euler : REAL is 2.71828

  sin( x : REAL ) : REAL is

  ....

end

 

该类别的使用者可能通过声明一个变量来创建 BASIC_MATH 实体,比如

bm : BASIC_MATH

然后执行命令

!!bm

这个命令让系统为一个 BASIC_MATH 型别的对象分配空间并将指向该对象的指针返回给变量 bm

在这种情况下,根本就不需要执行 make

 

5.7 自身引用

l         每一种面向对象语言都提供一种让对象引用其自身的方式。

l         Eiffel 中,用 Current 指代当前的对象。Current 最经常的用法是为另一个对象提供指向先前一个对象的引用。

class SOME_WINDOW_CLASS

sub : ANOTHER_WINDOW_CLASS

  ...

  !!sub.make( Current )

  ...

end

class ANOTHER_WINDOW_CLASS

parent : SOME_WINDOW_CLASS

  ...

  make( p : SOME_WINDOW_CLASS ) is

    do

      parent := p

end

 

 

(全文完)

 

 

[译注参考]

[OOSC2e] Bertrand Meyer, Object-Oriented Software Construction 2nd Edtion. 1997

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p> <strong><span style="background-color:#FFFFFF;color:#E53333;font-size:24px;">本页面购买不发书!!!仅为视频课购买!!!</span></strong> </p> <p> <strong><span style="color:#E53333;font-size:18px;">请务必到</span></strong><a href="https://edu.csdn.net/bundled/detail/49?utm_source=banner"><strong><span style="color:#E53333;font-size:18px;">https://edu.csdn.net/bundled/detail/49</span></strong></a><strong><span style="color:#E53333;font-size:18px;">下单购买课+书。</span></strong> </p> <p> <span style="font-size:14px;">本页面,仅为观看视频页面,如需一并购买图书,请</span><span style="font-size:14px;">务必到</span><a href="https://edu.csdn.net/bundled/detail/49?utm_source=banner"><span style="font-size:14px;">https://edu.csdn.net/bundled/detail/49</span></a><span style="font-size:14px;">下单购买课程+图书!!!</span> </p> <p> <br /> </p> <p> <span style="font-size:14px;">疯狂Python精讲课程覆盖《疯狂Python讲义》全书的主体内容。</span> </p> <span style="font-size:14px;">内容包括Python基本数据类型、Python列表、元组和字典、流程控制、函数式编程、面向对象编程、文件读写、异常控制、数据库编程、并发编程与网络编程、数据可视化分析、Python爬虫等。</span><br /> <span style="font-size:14px;"> 全套课程从Python基础开始介绍,逐步步入当前就业热点。将会带着大家从Python基础语法开始学习,为每个知识点都提供对应的代码实操、代码练习,逐步过渡到文件IO、数据库编程、并发编程、网络编程、数据分 析和网络爬虫等内容,本课程会从小案例起,至爬虫、数据分析案例终、以Python知识体系作为内在逻辑,以Python案例作为学习方式,最终达到“知行合一”。</span><br />
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值