我需要实现嵌套类。我如何在objective-c中编写它?
例如,我有这样的代码:
public class A {
private int a;
private B b;
class B {
private int z;
public void f() {
a = 1;
}
}
public void fA() {
b.f();
}
}
Run Code Online (Sandbox Code Playgroud)
我如何在objective-c中实现这段代码??
虽然我讨厌在这个问题上击败一匹马(我已经阅读了关于此的各种文章),但我想在创建我自己的"自己的约定"之前获得更多关于这个问题的意见,以便在编写时使用在Objective-C中.
我想弄清楚的约定最终是如何(使用生产级代码的最佳编码实践)在类中使用私有方法.来自C#的后台,当我编写类时,通常会有一个代码块在多个公共方法中重复(例如错误检查或WCF服务连接设置).我通常会创建一个此代码块,并将其放在一个私有方法中,仅供这些公共方法访问.这样,如果我需要进行更改,我只需要在一个位置执行此操作,而不是在类中的10个不同位置,但是从不让用户能够调用此私有方法.例如:
public Class A
{
public void method1()
{
doErrorChecking()
// Do more stuff
}
public void method2()
{
doErrorChecking()
// Do more stuff
}
private doErrorChecking() { //Error Checking Code}
}
Run Code Online (Sandbox Code Playgroud)
我知道没有真正的方法可以在Objective-C中真正使最后一个方法成为私有,但是我真的想确保当我在Objective-C中为iOS开发创建所有未来的类时,我遵循可用的最佳实践未来的代码重构将不再需要(希望如此).我注意到人们谈论类别,其他人只是不把方法放在@interface文件中,其他人使用扩展方法.目前我只是将方法实现放在@implementation文件中,而不是接口文件.我也让"想要"的私有方法有一个非常独特的名称,以便子类或覆盖方法不是问题.这是我应该遵循的道路吗?或者对于这些特定场景,有更好的方法吗?