阅读材料一:静态检查>3.类型

作者: 达贡之邪力 | 来源:发表于2016-11-04 22:32 被阅读0次

    Reading 1: Static Checking > Types

    原文地址:https://courses.edx.org/courses/course-v1:MITx+6.005.1x+3T2016/courseware/Readings_Videos/01-Static-Checking/

    类型

    Java和Python最大的人造不同在于其对数字n的定义前表明了其的类型:int。

    代码1

    一个类型是一系列值和伴随这些值的行为(操作)的集合。

    Java有一些基本类型,如下:

    - int(整数例如5和-200,但是其限制范围是2的31次方,大约2十亿个数)

    - long (为了更大的整数,范围增加到2的63次方)

    - boolean (true 和 false)

    - double (浮点数,代表了一系列实数)

    - char (单个字符, 例如 ‘A’ 和 ‘$’)

    Java也有对象类型, 例如:

    - String 代表一系列字符, 类似Python的string

    - BigInteger 代表无限大小的整数,类似于Python的integer

    根据Java的传统,基本类型用小写字母,对象类型用大写字母开头。

    操作(operations)是输入值再输出值的函数.(一个操作有时候可能会改变输入的值,这也称为可变,我们将在后面的阅读材料中谈到这一点).这些操作的语法各异,但是无论它们是如何写的,我们可以单纯地把它们看成为函数.这里是Java或Python中一个操作的三大语法类型.

    - 作为一个中置,前置,后置操作.例如,a + b 触发了操作 +: int * int -> int.

    - 作为一个对象的方法.例如, BigInteger.add(BigInteger)触发了add: BigInteger * BigInteger -> BigInteger.

    - 作为一个函数,例如: Math.sin(theta) 触发了sin: double -> double.在这里,Math不是一个对象,而是一个包含sin函数的类.

    对比Java的str.length()和Python的len(str).在两个语言中,这都是同样的操作--一个函数接受一个str返回一个str--但是它们运用了不同的语法.

    一些操作被重载过,就某种意义而言同样的操作名字用于了不同的类型.运算符+-*/在Java的数字原始类型中重度地重载了.方法也能被重载.大部分语言有一定程度的重载.

    相关文章

      网友评论

        本文标题:阅读材料一:静态检查>3.类型

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