代码之家  ›  专栏  ›  技术社区  ›  phi

使用方法和属性有什么区别?

  •  1
  • phi  · 技术社区  · 14 年前

    我正在研究“元素”示例应用程序的源代码,我在 AtomicElement.h

    @property (readonly) UIImage *stateImageForAtomicElementTileView;
    @property (readonly) UIImage *flipperImageForAtomicElementNavigationItem;
    @property (readonly) UIImage *stateImageForAtomicElementView;
    @property (readonly) CGPoint positionForElement;
    

    在实现文件中,它们看起来像

    - (UIImage *)stateImageForAtomicElementTileView {
        return [UIImage imageNamed:[NSString stringWithFormat:@"%@_37.png",state]];
    }
    

    你能详细说明一下这样做的原因吗?为什么不使用

    - (UIImage*) stateImageForAtomicElementTileView;
    

    在头文件中,然后像 [element stateImageForAtomicElementTileView]; element.stateImageForAtomicElementTileView ?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Pieter    14 年前

    我不认为有什么技术上的原因来选择一个成语而不是另一个,他们都可以用同样的方式使用。更多的是语义问题。

    一个类既有数据又可以执行操作(通常在所述数据上)。我认为你应该考虑使用一个房产 . [ ] 更像是一种记录 stateImageForAtomicElementTileView .