动态语言到底是什么

我们经常说OC 是一门动态语言,但让我很明确的解释什么是动态语言还是一脸懵的状态。为此特地查看资料看看大佬们都是怎么理解的。

一 动态语言与静态类型语言

当我想具体了解啥是动态语言时,第一想要了解就是它和静态语言的区别在哪了以及它们的优缺点。

①概念(定义)比较

   动态语言:(Dynamic programming Language -动态语言或动态编程语言),动态语言是指程序在运行时可以改变其结构,新的函数可以被引进,已有的函数可以被删除等在结构上的变化。

静态类型语言:(Statically Typed Language-静态类型语言)静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。对于动态语言与静态语言的区分,套用一句流行的话就是:Static typing when possible, dynamic typing when needed。

看完定义后还有些不明朗没关系 让我们举个实际的例子(下文动态=动态语言 静态= ):

动态---

unction Person(name){

this.name=name;

}

Person.prototype.getName=function(){

return this.name;

}

var person=new Person("okok");

alert(person.getName());

person.getName=function(){return "nono"};

alert(person.getName());

静态-----

public int add(int a,int b){

return a+b;

}

区别:静态是运行时不可改变结构了。

持续更新~

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,260评论 19 139
  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 8,850评论 1 24
  • 昨晚得知一个朋友在一个电台里为我点了一首歌,而且还私信了电台主播想对我说的话,很感动,虽然我没听到,其实最近过得一...
    素颜娇阳阅读 1,382评论 0 0
  • “累了,就找个人老实人嫁了吧,安安分分的过日子,一辈子平平淡淡的,也还是幸运的。” 曾经很多次听到身边的朋友说起这...
    谢丹儒阅读 4,425评论 1 4
  • 今天下午,跟奶奶走到街上去洗澡。下午太阳正好出来了。懒懒地乘着阳光,脚步慢慢踱,路上说着话,老人家嘛,总爱说一些长...
    Jane_zhu阅读 1,184评论 0 0

友情链接更多精彩内容