zoukankan      html  css  js  c++  java
  • O-C相关-08-动态类型与静态类型

    08-动态类型与静态类型

     

    1, 什么是动态类型和静态类型

     

    1) 动态语言

    又叫动态编程语言,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化。比如众所周知的ECMAScript(JavaScript)便是一个动态语言。除此之外如Ruby、Python等也都属于动态语言,而C、C++等语言则不属于动态语言。

    而其实我们平时说的“动态语言”应该指的是“动态类型语言”。至少我之前一直是这么认为的。

     

    2) 动态类型语言

    在运行时确定类型的语言。

    即编译时与类型无关。一般在变量使用之前不需要声明变量类型,而变量的类型通常是由被赋的值的类型决定。 如php、Python和Ruby。

     

    3) 静态类性语言

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

    对于动态语言与静态语言的区分,套用一句流行的话就是:Statictyping when possible, dynamic typing when needed。

     

    4) 强类型语言

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

    强类型定义语言是类型安全的语言。

     

    5) 弱类型定义语言

    数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

    强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    线程运行boost库在工作(22)任务之二
    vi 帮助文档 man vi
    跳槽关系三国演义告诉我们的60条真理
    后台端口虚拟主机wdcp的相关问题以及解决方法
    格式化字符串android 格式化时间
    对象查询HQL多表联合查询的问题
    myeclipse8.6中svn插件的安装
    乱码解决方法
    Restfull风格是什么意思?
    poj3013
  • 原文地址:https://www.cnblogs.com/wahy/p/4817237.html
Copyright © 2011-2022 走看看