首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么"[self class] == [super class]"?

这个问答内容涉及到Objective-C编程语言中的类和继承。在Objective-C中,当一个类继承自另一个类时,它们之间的关系可以通过[self class][super class]来表示。

在这个问答内容中,[self class]表示当前类的类对象,而[super class]表示父类的类对象。当一个类没有父类时,它的父类就是基类,也就是NSObject。因此,当一个类继承自NSObject时,[super class]就是NSObject的类对象。

[self class][super class]相等时,说明当前类和它的父类是同一个类,也就是说当前类没有继承自任何其他类。这种情况通常发生在Objective-C中的基类NSObject的子类中。

总结一下,这个问答内容中的[self class] == [super class]表示当前类没有继承自任何其他类,它的父类就是基类NSObject

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

T::class 和 this::class 的区别

,受到一位朋友的评论的启发,这篇文章就承接前文,探讨一下 T::class 和 this::class 区别。 感谢这位朋友的支持! 1....泛型参数的例子 其实问题是很清楚的,this::class 表示的是对象的类型,而 T::class 则取决于 T 被如何推断。具体用哪个,取决于你的需求。...也正是因为这一点,我们想要获取泛型参数 T 的实参,还需要先拿到 super type 也就是 A 的 KType 实例了。 其次,获取泛型实参,并拿到实参类型的 KClass 实例。...小结 本文从 this::class 和 T::class 的异同出发,探讨了 this::class 的两种应用场景,并衍生出了编译期绑定的问题,上述讨论的结果也同样适用于 Java 中的 this.getClass...() 以及 T.class

1.2K30

es6(五):class关键字(extends,super,static)

关键字,上面代码等价于下面: 1 class B{ 2 constructor(name,age){ 3 this.name=name 4 this.age...10 var b1=new B('apple',100) 11 console.log(b1.test())//apple 100 需要注意的一点是:类和模块中默认使用的就是严格模式 class...中的静态方法:static 1 class C{ 2 //没有写上constructor,默认会生成一个空的构造函数 3 static foo(){//注意:class里面函数不用添加...可以通过extends关键字继承,对比es5修改原型链简单直观方便许多 注意:子类中如果写了构造函数contructor,那么一定要在里面使用super方法,同时只有使用了super方法才能使用this...E extends D{ 11 constructor(age,email,weight){ 12 super(age+'E',email+'E')//这里的super指向的是父类

66270

SpringBoot之class is not visible from class loader

一、前言 最近在搭建SpringBoot的新应用,遇到个有意思的问题,如题就是在加载某一个类时候抛出了class is not visible from class loader, 下面就带大家看看是如何产生的...二、问题产生 首先有如下bean的定义: public class TestProxy implements TestService { private TestService testService...proxy = RemoteConsumerProxy() .setInterfaceClass(TestService.class...到这里对类加载器比较熟悉的童鞋应该会有所思了,同一个类两次加载后的Class对象不一样,那只有一种情况,那就是使用了两个类加载器加载了同一个类。..., args); } 五、总结 虽然是同一个类,但是使用不同的类加载器加载后得到的Class对象是不一样的,区分一个Class对象是否相等要看包名+类名,也要看是否是同一个类加载器。

2.3K21

Class(类)

基本语法 class是用来替代传统的 构造函数创建对象(面向对象) 的新语法。 class 的本质是 function。 它可以看作一个语法糖,让对象原型的写法更加清晰、更像面向对象编程的语法。...super关键字 子类 constructor 方法中必须有 super ,且必须出现在 this 之前。 super用于继承,代表父类的this。...由于子类没有自己的this,在使用constructor必须通过声明super(),才能使用this。 super的作用是子类访问父类的东西。正常情况下子类的方法如果和父类方法重名,会直接覆盖。...使用super就可以获取到父类原来的东西 1 class Father { 2 Fn() { 3 console.log("我是爸爸"); 4...} 5 } 6 7 class Son extends Father { 8 Fn() { 9 super.Fn() 10

64320

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券