美文网首页
动态语言到底是什么

动态语言到底是什么

作者: jiangxuntong | 来源:发表于2018-10-26 17:53 被阅读142次

    我们经常说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;

    }

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

    持续更新~

    相关文章

      网友评论

          本文标题:动态语言到底是什么

          本文链接:https://www.haomeiwen.com/subject/uafltqtx.html