首页 > 代码库 > 02. oc语言是动态语言????

02. oc语言是动态语言????

 参照着知乎上大神们给的解释,(https://www.zhihu.com/question/19918532)自己要总结下知识:

自己初级并没有理解 动态、静态、强类型、弱类型 语言的这些含义,区分。 趁着近来有些零散的时间,赶紧补充下自己……

  1. 动态编程语言

   是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化。

   比如众所周知的ECMAScript(JavaScript)便是一个动态语言。 除此之外如Ruby、Python等也都属于动态语言。

 2 . 静态语言

   与动态类型语言正好相反,在编译时,需要确定类型的语言。即写程序时需要明确声明变量类型。如C/C++、Java、C#等。

   静态语言 对类型有着绝对的要求,所以能非常棒的被约束!

 3 . 强类型语言

  一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。强类型定义语言是类型安全的语言。

  4. 弱类型定义语言

  数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
  强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。

  像vb,php等就属于弱类型语言

 

综上所述:

  oc 语言中,如id类型 应该是标致性的: 在运行是才确定类型的;

  同时 oc 类型 是需要转化才能改变类型的,可以举个例子 ,string.format (%d,number);

 

 

        

02. oc语言是动态语言????