学些Object-c的意外收获 博客分类: ios cjava
程序员文章站
2024-03-25 09:53:10
...
object-c是c语言的一个扩充,所以本质是c语言,但是oc却是实现了面向对象的c,之前学习java等其他语言时,老师们喜欢把c和java或者c++或者c#完全的剥离开来讲,完全把他们当做不同的语言了,其实c语言时相对来说比较接近底层的语言,如果我们从底层去理解(主要是内存)语言,就会容易理解很多,抽象出来的东西往往比较难理解,比如java的引用,c++的指针等等东西,在底层的体现都是内存地址,我们从编译器的角度去看就容易理解了。大部分oc教程都是从c出发去讲解面向过程和面向对象的区别,这样就了解了整个发展过程,并且oc是通过一些特殊的机制去实现语言的动态,我们可以从中体会静态到动态的转换过程,而不是生硬的将他们划分在不同的领域,说什么思想上的不同等等···你妹!
oc通过一个runtime机制(对于runtime我还尚未理解透彻)来实现动态,其实做的事情和java的vm差不多。
当然,我的理解还比较肤浅,需要继续学习,加强理解。
oc通过一个runtime机制(对于runtime我还尚未理解透彻)来实现动态,其实做的事情和java的vm差不多。
当然,我的理解还比较肤浅,需要继续学习,加强理解。