我是个初学者,这个学期我要学习Cobol语言。在互联网上,关于OOP cobol的例子很少,甚至没有例子。理论上只有st这样的例子,他们没有告诉我如何添加更多的st (就像Java中的main )来查看程序的工作情况。我有一些这样的代码:
class-id. A data is protected
inherits from Base.
object section.
method-id. "newWithData"
linkage section.
01 lnkObject object reference.
01 lnkName pic x(80).
procedure division using lnkName
returning lnkObject.
*----Create a new instance of A using the "new" method from Base
invoke super "new" returning lnkObject
*----Send it an initialize message.
invoke lnkObject "initialize" using lnkName
exit method.
end method "newWithData".
object.
object-storage section.
01 theName pic x(80).
...
method-id. "initialize"
linkage section.
01 lnkName pic x(80).
procedure division using lnkName.
*----Store the initialization parameter in the object's
* instance data
move lnkName to theName
exit method.
end method "initialize".
end object.
end class "A". 但我不知道如何运行(无论是理论还是实践)。有谁能教我怎么做吗?这将是最好的帮助我与另一个例子和解释。
发布于 2011-06-14 00:50:46
这真的不能算作对你问题的回答。在您的原始问题中添加的注释表明,您的任务是研究和报告COBOL语言和范例。如果这是您的目标,我不建议您进入OO COBOL,除非是作为一个侧栏问题。
在我看来,COBOL的面向对象扩展是一种营销工具。OO扩展归根结底是装点门面,对于语言的起源和传统优势来说并不是很好的匹配。关于COBOL的OO扩展,我能说的最好的一点是,它们可以缓解在尝试为COBOL事务处理后端构建Java或其他基于OO的前端时遇到的一些接口问题。我也不完全相信这一点。
对于在某些环境中执行某些任务,COBOL是一种优秀的语言。请参阅:What makes COBOL such a hated language
COBOL范例是第三代命令式语言的范例。它自然适合于结构化编程,在这种编程中,设计的重点是“过程”,而不是“对象”。接受COBOL的本质,并学会热爱它。
发布于 2011-07-15 21:06:08
没有像"COBOL范式“这样的东西。不要忘记,COBOL是作为一种过程化语言诞生的(具有冗长的语法),因此“传统的”COBOL遵循过程化/结构化编程的范例。它非常古老,但今天仍然在使用,特别是在遗留的金融应用程序中。OO COBOL是对它的扩展,这意味着添加了一些额外的语法,以允许创建对象、继承、etc...By等事情。在它创建的时候,有很多(更好的) OO语言可用,所以它在行业或研究中基本上被忽视了。然而,有一些资源是可用的:这个website,这个tutorial,我甚至在this bibliography中找到了许多关于OO COBOL的书籍。
https://stackoverflow.com/questions/6331318
复制相似问题