zoukankan      html  css  js  c++  java
  • 计算机基础

    强类型与弱类型

    如果一门语言很少隐式转换类型,说明它是强类型语言;如果经常这么做,说明它是弱类型语言。Java、C++和Python是强类型语言。PHP、JavaScript和Perl是弱类型语言。

    概念参照Google等搜索引擎
    这里的随笔举出例子:证明Python是强类型语言,JavaScript是弱类型语言

    Python:

    	1 + '1'
    

    JavaScript

    	1 + '1'
    


    动态与静态语言

    动态类型语言是指在运行时检查类型,可以给类/实例在运行时绑定任何属性和方法;在编译时检查类型的语言是静态语言(需要声明类型)。Python、Ruby是动态语言,也使用协议。


    优点与缺点

    1. 强类型能及早发现缺陷

    以下是弱类型语言JavaScript的不足

    ' ' == '0'    // false
    0 == ' '    // true
    0 == '0'    // true
    ' ' < 0    // false
    ' ' < '0'    // true
    

    Python是强类型,不会自动在字符串和数字之前强制转换,所以在Python3中,上述==表达式的结果都是False,而<比较会抛出TypeError。

    2. 静态类型使得一些工具(编译器和IDE)便于分析代码、找出错误和提供其他服务(优化、重构,等等)动态类型便于代码重用,代码行数更少,而且能让接口自然成为协议而不提早实行。

    3. Python是动态强类型语言。PEP484——Type Hints,无法改变这一点。但是API作者能够添加可选的类型注解,执行某种静态类型检查。

  • 相关阅读:
    LayoutInflater(布局服务)
    FOTA升级
    APK安装过程及原理详解
    Context类型
    Android应用的persistent属性
    Notification(状态栏通知)详解
    Handler消息传递机制浅析
    Selenium HTMLTestRunner 无法生成测试报告的总结
    【python】远程使用rsa登录sftp,上传下载文件
    02.性能测试中的指标
  • 原文地址:https://www.cnblogs.com/allen2333/p/8710729.html
Copyright © 2011-2022 走看看