2017-09-05 37 views
1

C#中的属性和Python中的描述符和属性有些设计模式?我没有看到他们属于https://en.wikipedia.org/wiki/Software_design_pattern。 谢谢。C#中的属性和Python中的描述符和属性有些设计模式?

+0

我不认为语言功能是一种设计模式。毕竟,你会如何以一种没有它的语言实现它?如果你不能,它不是一个模式。 – kindall

+0

如果我没错,Java没有属性。那么在Java中实现一个属性是一种设计模式呢? – Ben

+0

Java没有属性作为语言特性,但getter和setter方法是相同的(尽管编写和读取更繁琐),所以我会说:Java具有与C#中相同的属性,但必须实现它们手动。 –

回答

2

我不会称之为设计模式。 C#属性是mutator methods

在计算机科学中,增变器方法是一种用于控制变量变化的方法。他们也被广泛称为二传手方法。一个setter通常伴随一个getter(也称为访问器),它返回私有成员变量的值。

我不知道任何Python,但既然你把它们压在你的问题上,我认为这个概念是一样的。