编程C,C ++,Java,PHP,Ruby,图灵,VB
计算机科学加拿大 
编程C,C ++,Java,PHP,Ruby,图灵,VB  

用户名:   Password: 
 登记登记   
 艾菲尔 - 一种谦虚的介绍
指数 -> 一般编程
查看上一个主题 可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题
作者 信息
WTD.




邮政发布: Tue 2004年2月17日10:07 PM  帖子主题:艾菲尔 - 一种谦虚的介绍

eiffel编程语言通常与合同的设计概念相关,这些概念或多或少通过严格执行3d中奖规则可以运行的条件来扩展面向对象的设计。

Bertrand Meyer创建了艾菲尔编程语言,作为合同和一般良好软件建设实践的关于设计的思想。

在显示语法示例之前,重要的是要理解语言本身的一些事情以及与之相关的术语。埃菲尔是一种纯粹的面向对象的语言。羊肉甚至比Java, 一切,包括基本整数类型是对象。沿着C ++的线条,埃菲尔支持多个继承和操作员重载。但是,eiffel不支持重载的方法名称。

我一直在使用“方法”一词,但埃菲尔不使用这个术语。埃菲尔可能有变量和例程。例程进一步分解为功能和3d中奖规则。函数返回一个值,但3d中奖规则没有。过程可能会影响其自身范围之外的变量状态,但功能可能不会。这些差异是强制执行的。无法使用函数,而不会将其返回值分配(或“绑定”)。

当变量或例程是类的一部分时,它们被称为“功能”。除了某些其他类别的对象而不是“公共”,“私人”或“受保护”,而不是“私人”或“受保护”。任何和没有人都在公开和私人。

埃菲尔是垃圾收集的,所以损伤者不是必需的。此外,埃菲尔没有建设者,而是“创作”例程。这些是可以与“创建”关键字一起使用的过程,并用于初始化实例变量。这类似于C ++的“新建”关键字,但可以使用名称在类的“创建”子句中的任何3d中奖规则。

eiffel中的每个类都存储在自己的文件中,名称与类的名称匹配,加上“.e”扩展名。虽然eiffel类名称是所有大写字母,但文件名应小写。

一类是该3d中奖规则的“主要”,其“使”创建包含代码Java3d中奖规则员的创建例程可能会放入:

引用:
公共静态void main(String [] args)


所以,没有进一步的ado,我给你“你好,世界!”......

引用:

班级
HELLO_WORLD
创建 - 创建条款
make
功能{任何} - 公众
make is
local
- 只是为了演示,一些本地vars
您好:字符串是“Hello” - 一个常量字符串变量
world : STRING
do
world := "world"
std_output.put_string.(hello +“,”+世界+“!”)
std_output.put_new_line.
- 看起来ma!没有括号
- 不需要柱子。
end
结尾


现在,让我们说这个三次。

代码:

班级
   HELLO_WORLD
创建
   make
功能{无}
   say_hello_world is
      do
         std_output.put_string.("Hello, world!")
         std_output.put_new_line.
      end
功能{任何}
   make is
      local
         i : INTEGER
      do
         from
            i := 1
         until
            i > 3
         loop
            say_hello_world
            i := i + 1
         end
      end
结尾


当然,这都是非常基本的。我欢迎有问题。

这些代码标签太大了......随机似乎...... BAH - Tony
赞助
赞助
赞助
赞助
从上一个显示帖子:   
   指数 -> 一般编程
查看上一个主题 告诉一个朋友可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题

11  [ 1 Posts ]
跳到:   


Style:  
搜索: