2014-10-08 97 views
1

是否有任何允许自反继承或继承循环的编程语言?是否有允许继承循环的语言?

如果不是,在任何语言中是否是不可能的事情?

除了任意实现共享和参与异构数组之外,是否还有其他用途?

例如,我可以想象有任何字段或方法添加到循环参与者的其他基类或接口中的任何字段或方法会自动变为可用于整个循环。另一个想法是等价类的表示。

class Thing extends Item, implements A 
{ 

} 

class Item extends Concept 
{ 

} 

class Concept extends Thing 
{ 

} 

Item item = new Thing(); 
Thing thing = new Item(); 
A a1 = new Thing(); 
A a2 = new Item(); 
A a3 = new Concept(); 
+3

通过给它任意的语义,“允许”任何语法结构是微不足道的。当你添加循环时,继承的通常语义在你的脸上爆炸,它不适合。以有意义的方式扩展它可能是可能的,但结果看起来并不明显。总之,你能解释一下你想要这样的事情来表示**吗?当一些领域和方法被添加到“项目”,“概念”和“事物” - 谁会继承谁? – delnan 2014-10-08 11:28:51

+0

什么是*点*? – 2014-10-08 11:33:38

+0

可能将任何字段或方法添加到循环参与者的其他基类或接口中的任何循环参与者的自动变为可用于整个循环。 – 2014-10-08 11:40:40

回答

1

继承的目的是对参与类施加一些(层次)结构。

允许循环似乎走向相反的方向,有效地破坏结构,因为每个项目将彼此相关。

相互依赖性可能是必需的,但这应该由其他一些句法结构明确表达,而不是扭曲和滥用另一个。