美文网首页
强类型语言和弱类型语言

强类型语言和弱类型语言

作者: 云溪_Cloud | 来源:发表于2016-03-08 11:59 被阅读901次

也称为强类型定义语言。一种总是强制类型定义的语言,要求变量的使用要严格符合定义,所有变量都必须先定义后使用。java、.NET、C++、python等都是强制类型定义的。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。
例如你有一个整数,如果不显式地进行转换,你不能将其视为一个字符串。
与其相对应的是弱类型语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

弱类型语言也称为弱类型定义语言。与强类型定义相反。像vb,php,javascript,python,vbscript等就属于弱类型语言.例如:在vbscript中,可以将字符串 12 和整数 3 进行连接得到字符串 123,然后可以把它看成整数 123,而不需要显式转换。
弱类型有时显得很方便,有时却又极易出错。比如:
var result=5+5; //two numbers
alert(result); //outputs "10"
var result=5+'5'; // a number and a string
alert(result); //outputs "55"
因此使用弱类型语言也要格外注意数据类型防止出错。

弱类型语言vbs:
a=1
b=a+"1"+"a" //结果是11a,这里 a 成了字符串
c=a+1 //结果是2 ,这里a则是数字型

强类型语言:c#
int a=2
string b=a.ToString()+"1"+"a"
int c=a+1

看到了吗?区分大小写,需要实现申明类型外,一个重要的区别是,弱类型的语言的东西没有明显的类型,他能随着环境的不同,自动变换类型
而强类型则没这样的规定,不同类型间的操作有严格定义,只有相同类型的变量才能操作,虽然系统也有一定的默认转换,当绝没有弱类型那么随便

ps:弱类型代码简单,但因为变量没有确定的类型,所以容易出错!强类型代码复杂(比如:转换日期显示格式 (convert.toDatetime("2007-1-1 08:08:08")).ToString("yyyy-MM-dd"),呵呵你可以看到这种写法相当麻烦),但因为有严格定义所以不容易出错

相关文章

  • 对程序健壮性的简单理解

    强类型语言VS弱类型语言 在谈健壮性之前,先谈谈什么是强类型语言和弱类型语言。首先,在大学接触的第一门语言就是C语...

  • ts学习

    强类型语言和弱类型需要定义 强类型类型语言的变量不能赋值不同类型,除非强制类型转换

  • 弱类型语言、ASCII与Unicode、非相等运算符

    弱类型语言和强类型语言 强类型和弱类型主要是根据变量类型处理的角度来分类的; 强类型不允许隐式变量类型转换,如Ja...

  • 强类型语言和弱类型语言

    也称为强类型定义语言。一种总是强制类型定义的语言,要求变量的使用要严格符合定义,所有变量都必须先定义后使用。jav...

  • 编程语言类型

    分类 根据语言类型能否根据环境自动发生改变,可以将编程语言分为强类型语言和弱类型语言。 强类型语言一个变量被定义类...

  • 语言种类

    1.强类型语言和弱类型 弱类型语言允许将一块内存看做多种类型。比如直接将整型变量与字符变量相加。C and C++...

  • python简单介绍

    python介绍 python是一个什么样的语言? 编译型和解释型静态语言和动态语言强类型定义语言和弱类型定义语言...

  • 黑猴子的家:Python 是一门什么样的语言??

    编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类...

  • TypeScript

    强类型与弱类型 类型安全纬度:强类型与弱类型强类型:语言层面限制函数的形参类型和实参类型必须相同。弱类型:语言层面...

  • 初学JavaScript之数据类型与变量

    和Java、C语言、c++等强类型语言不同的是JavaScript语言是弱类型语言,强类型语言的含义是指该语...

网友评论

      本文标题:强类型语言和弱类型语言

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