class func alloc() -> Self
Overview 概要
Typically, a message to a proxy is forwarded to the real object or causes the proxy to load (or transform itself into) the real object. Subclasses of NSProxy
can be used to implement transparent distributed messaging (for example, NSDistant
) or for lazy instantiation of objects that are expensive to create.
概して、プロキシへのメッセージは、実際のオブジェクトに転送されます、もしくはそのプロキシが実際のオブジェクトをロード(またはそれ自身がそれへと変形)することを引き起こします。NSProxy
のサブクラスは、透過的な分散メッセージ(例えば、NSDistant
)を実装するためにまたは、作成するのに高くつくオブジェクトの遅延インスタンス化のために使われることができます。
NSProxy
implements the basic methods required of a root class, including those defined in the NSObject
protocol. However, as an abstract class it doesn’t provide an initialization method, and it raises an exception upon receiving any message it doesn’t respond to. A concrete subclass must therefore provide an initialization or creation method and override the forward
and method
methods to handle messages that it doesn’t implement itself. A subclass’s implementation of forward
should do whatever is needed to process the invocation, such as forwarding the invocation over the network or loading the real object and passing it the invocation. method
is required to provide argument type information for a given message; a subclass’s implementation should be able to determine the argument types for the messages it needs to forward and should construct an NSMethod
object accordingly. See the NSDistant
, NSInvocation
, and NSMethod
class specifications for more information.
NSProxy
は、ルートクラスに要求される基本メソッドを実装します、NSObject
プロトコルで定義されるものを含みます。しかしながら、抽象クラスのようにそれは初期化メソッドを提供しません、そしてそれはそれが応答しない何らかのメッセージを受け取りしだい例外を引き起こします。具象サブクラスは、したがって初期化または作成メソッドを提供してそしてforward
およびmethod
メソッドをオーバーライドして、それが自身では実装しないメッセージを取り扱わなければなりません。サブクラスの持つforward
の実装は、発動を処理するのに必要とされるものは何でもしなければなりません、例えば発動をネットワーク越しに転送することまたは実オブジェクトをロードしてそれを発動に渡すことなど。method
は引数型情報をある与えられたメッセージに対して提供することを要求されます;あるサブクラスの持つ実装はそれが転送する必要があるメッセージに対する引数型を決定できるべきです、そしてしたがってNSMethod
オブジェクトを構築すべきです。NSDistant
, NSInvocation
、そしてNSMethod
クラス仕様をさらなる情報のために見てください。