gpt4 book ai didi

ios - 防止调用子类中的继承方法

转载 作者:可可西里 更新时间:2023-11-01 17:10:22 25 4
gpt4 key购买 nike

我有一个 UIView 的子类,它继承了 - initWithFrame: 方法。但是,我不希望在我的子类上调用该方法。有什么方法可以在我的子类上“删除”该方法吗?

最佳答案

不要实现它,也不要调用[super initWithFrame:aRect]。只需调用 doesNotRecognizeSelector:使用 _cmd 参数:

- (id)initWithFrame:(CGRect)aRect
{
[self doesNotRecognizeSelector:_cmd];
}

如果该方法不返回void,您将收到来自编译器的警告:

Control reaches end of non-void function.

要“移除”此警告,请添加 return self;(在本例中)作为最后一行以使编译器满意。它永远不会在运行时到达,因为 doesNotRecognizeSelector: 引发了一个 NSInvalidArgumentException 异常。

关于ios - 防止调用子类中的继承方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10774631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com