2011-09-14 13 views
3

我知道你可以在R中创建新的类,但你为什么想要?我认为有两个原因:为什么要在R中创建新的类?

  1. 可以使用is.功能测试一个对象是否属于一个特定的类(对象的分类)
  2. 只允许输入的某些类别为对象的插槽(例如,只有一个字符串为surnmane,并且只有一个人类类别中的邮政编码)。

我还没有想过通过其他方式不能很容易地实现这些好处,或者他们真的有用的情况。

我希望这不是太开放和更具体的例子,人们如何使用定义类会很好。感谢您的任何想法。

+3

问另一种方式,人们可能会问,为什么我们编程的。已经不是一切已经写? – adamleerich

+0

3.要保证的东西会表现你所期望的方式它的行为。或至少能够抱怨,当它不。 –

+0

@adamleerich,我想我是什么国王是,这里是一个工具,我有点理解它做什么,但为什么我想要这样做?如果您有创建新类的例子对您有用,那就太好了。 – Charlie

回答

8

它被称为面向对象编程。查看它,但总之:

  • 对象封装行为 - 例如,类的'print'方法的行为是特定于该类的。然后,您可以将该类中的该方法的代码与其他代码分开。然后你只需告诉你的用户“打印”这个东西 - 这是他们已经做的事情 - 并且他们得到了一个很好的自定义打印版本的东西,而不必使用特殊的打印功能,如“printMyThing(东西)” 。

  • 对象从其父类继承的行为 - 例如用于GLM类的“公式”法回落到了LM类(不知道这是真实的,但它只是为了说明公式法

总之,它是一个好事。

相关问题