当前位置:文档之家› java面向对象程序设计(戴开宇译版)课本知识整理

java面向对象程序设计(戴开宇译版)课本知识整理

第一章计算机、程序和java概述1.程序设计就是创建(或者开发)软件,软件也称为程序。

2.计算机是存储和处理数据的电子设备。

计算机包括硬件和软件两部分。

3.一台计算机是由以下几个主要的硬件组件构成的:中央处理器(CPU),内存(主存),存储设备(例如磁盘和光盘),输入设备(例如鼠标和键盘),输出设备(例如显示器和打印机),通信设备(例如调制解调器和网卡)4.数据和电信号通过总线在计算机的各个部分之间传输。

5.中央处理器(CPU)是计算机的大脑。

他从内存中获取指令,然后执行这些指令。

CPU 通常由两部分组成:控制单位和算术/逻辑单元。

控制单元用于控制和协调其他组件的动作。

算术/逻辑单元用于完成数值运算(加减乘除法)和逻辑运算(比较)。

6.核是处理器中实现指令读取和执行的部分。

7.二进制数字系统中的数,称为比特(bit,二进制数)8.计算机中字节(byte)是最小的存储单位。

每个字节由8个比特构成。

各种类型的数据(例如,数字和字符)都被编码成字节序列。

9.计算机的存储能力是以字节和多字节来衡量的。

KB<MB<GB<TB10.计算机的内存由一个有序的字节序列组成,用于存储程序及程序需要的数据。

11.每个字节都有一个唯一的地址,使用这个地址确定字节的位置,以便于存储和获取数据。

因为可以按任意顺序存取字节,所以内存也被称为随机访问存储器。

12.计算机的内存是一种易失的数据保存形式,程序和数据被永久的存放在存储设备上。

但是从内存中读取比从存储设备读取要快得多。

13.存储设备主要有以下三种类型:磁盘驱动器、光盘驱动器、USB闪存驱动器。

14.驱动器是对存储介质(例如,磁盘和光盘)进行操作的设备。

存储介质物理的存储数据和程序指令。

驱动器从介质读取数据并将数据写在介质上。

15.硬盘用于永久的存储数据和程序。

CD指光盘,有三种CD:只读光盘驱动器、可录光盘、和可复写光盘。

可以将数据写到光盘上,然后用新的数据覆盖掉这些数据。

16.DVD指数字化多功能光盘或者数字化视频光盘。

(类型有:可录和可复写)一张DVD上可以保存的信息要比一张CD上可以保存的信息多。

17.通用串行总线(USB)接口允许用户将多种外部设备连接到计算机。

B闪存驱动器是用于存储和传输数据的设备。

19.输入设备和输出设备让用户可以和计算机进行通信。

最常用的输入设备是键盘和鼠标,而最常用的输出设备是显示器和打印机。

20.计算机程序称为软件,是告诉计算机该做什么的指令。

21.计算机的原生语言就是机器语言。

22.汇编语言使用短的描述性单词(称为助记符)来表示每一条机器语言指令。

汇编语言的出现降低了程序设计的难度。

但是需要使用一种称为汇编器的程序将汇编语言程序转换为机器代码。

23.高级语言中的指令称为语句。

24.用高级语言编写的程序称为源程序或源代码。

由于计算机不能运行源程序,源程序必须被翻译为可执行的机器代码。

翻译可以由另外一种称为解释器或者编译器的编程工具来完成。

25.解释器从源代码中读取一条语句,将其翻译为机器代码或者虚拟机器代码,然后立刻运行,注意来自源代码的一条语句可能被翻译为多条机器指令。

26.编译器将整个源代码翻译为机器代码文件,然后执行该机器代码文件。

27.操作系统是运行在计算机上的最重要的程序,它可以管理和控制计算机的活动。

28.操作系统的主要任务:控制和监视系统活动、分配和调配系统资源、调度操作。

29.多道程序设计、多线程、多处理。

多道程序设计允许多个程序通过共享同一个CPU同时运行。

多线程允许单个程序同时执行多个任务。

多处理类似多线程。

区别在于多线程是在单个程序中并行运行多个线程,而多处理是采用多个处理器来并行运行多个程序。

30.J ava是简单的、面向对象的、分布式的、解释型的、健壮的、安全的、体系结构中立的、可移植的、高性能的、多线程的和动态的。

31.JDK由一组独立程序构成,每个程序都是从命令行调用的,用于编译、运行和测试java 程序。

运行java程序的程序称为JRE。

32.J ava是从类中的main方法开始执行的。

33.类名都是以大写字母开头的。

main方法是程序开始执行的入口。

方法是包含语句的结构体。

分号(;)称为语句结束符。

34.保留字或关键字对编译器而言都是有特定含义的,所以不能在程序中用于其他目的。

35.注释帮助程序员进行相互沟通以及理解程序。

有行注释、块注释、java文档注释。

36.J ava源程序是区分大小写的。

37.J ava源程序保存为 .java文件,编译为.class文件。

Class文件由Java虚拟机(JVM)执行。

38.源文件的扩展名必须是.java文件,而且文件名必须与公共类名完全相同。

39.J ava编译器将java源文件翻译成java字节码文件。

Javac Welcome.java用来编译Welcome.java。

40.J ava程序开发过程由重复的创建/修改源代码、编译和执行程序组成。

41.在编译和运行程序前必须先安装和配置JDK,编译器会生成扩展名为.class的字节码文件。

42.虚拟机不是物理机器,而是一个解释java字节码的程序。

Java字节码可以在不同的硬件平台和操作系统上运行。

Java源代码编译成java字节码,然后java字节码被JVM解释执行。

43.执行java程序就是运行程序的字节码,可以在任何一个装有JVM的平台上运行字节码,JVM就是解释器。

它一次只将字节码中的一个指令翻译为目标机器语言代码,而不是将整个程序作为一个单元。

翻译完一步之后就立即执行这一步。

Java Welcome命令用来运行字节码。

44.在运行一个Java程序时,JVM首先会用一个称为类加载器的程序将类的字节码加载到内存中。

当加载该类后,JVM使用一个称为字节码验证器的程序来检验字节码的合法性,确保字节码没有违反java的安全规范。

45.良好的程序设计风格和正确的文档使程序更易阅读,并且能帮助程序员避免错误。

程序设计风格决定程序的外观。

文档是一个关于程序的解释性备注和注释的结构体。

46.缩进用于展示程序中组成部分或语句之间的结构性关系。

47.程序设计错误可以分为三类:语法错误、运行时错误和逻辑错误。

48.在编译过程中由编译器检测出来的错误称为语法错误或编译错误。

49.运行时错误是引起程序非正常终止的错误。

输入错误是典型的运行时错误。

50.当程序没有按预期的方式执行时就会发生逻辑错误。

第二章基本程序设计1.算法描述的是如果要解决一个问题,所需要的执行的动作以及这些动作的执行顺序。

算法可以帮助程序员在使用程序设计语言编写程序之前进行规划。

算法可以用自然语言或者伪代码(即自然语言和程序设计代码混在一起使用)描述。

2.变量代表存储在计算机内存中的一个值。

每个变量都有名字、类型、大小和值。

直到给它赋一个数值时,该变量才被定义。

3.在源代码中,字符串常量不能跨行。

4.从控制台读取输入,使得程序可以从用户处获得输入。

5.调用对象的方法就是让这个对象执行某个任务。

6.有两种类型的import语句:明确导入(指定单个的类)和通配符导入(使用*作为通配符,导入一个包里的所有类)。

声明明确导入和声明通配符导入在性能上是没有什么差别的。

7.标识符是为了标识程序中诸如类、方法和变量等元素而采用的命名。

标识符命名规则:(1)标识符是由字母、数字、下划线和美元符号构成的字符序列。

(2)标识符必须以字母、下划线或美元符号开头,不能以数字开头。

(3)标识符不能是保留字。

(4)标识符不能是true、false或null。

(5)标识符可以为任意长度。

8.标识符用于命名程序中的变量、方法、类和其他项。

具有描述性的标识符可提高程序的可读性。

不要用字符$命名标识符。

习惯上,字符$只用在机器自动产生的源代码中。

9.变量用于表示程序中可能被改变的值。

变量用于表示某种类型的数据。

变量声明通知编译器根据数据类型为变量分配合适的内存空间。

10.在赋值给变量之前,必须声明变量。

方法中声明的变量在使用之前必须被赋值。

每个变量都有使用范围,变量的使用范围是指可以引用该变量的程序部分。

11.赋值语句将一个值指定给一个变量。

要给一个变量赋值,变量名必须在赋值操作符的左边。

12.表达式表示包含值、变量和操作符的一次计算。

赋值语句也称为赋值表达式。

在赋值语句中,左边变量的数据类型必须与右边值得数据类型兼容。

13.命名常量是一个代表不变值的标识符。

常量必须在同一条语句中声明和赋值。

使用常量的好处:1)当一个值多次使用的时候,不必重复输入;2)如果必须修改常量值(例如,将PI的值从3.14改为3.14159),只需在源代码中的一个地方做改动;3)给一个常量赋一个描述性名字会提高程序的易读性。

14.使用小写字母命名常量和方法。

驼峰命名法。

类名中的每个单词的首字母大写。

常量中的所有字母大写。

15.操作数是被操作符操作的数。

(就是计算的数字)16.字面值是程序中直接出现的常量值。

为了表示一个long型的整型字面值,需要在其后加字母L或l。

17.为了提高可读性,java允许在一个数值型字面值的两个数字之间使用下划线。

下划线必须置于两个数字之间。

18.浮点数在计算机内部都是以科学计数法的形式进行存储的。

19.Java表达式的求值和数学表达式求值是一样的。

20.可以通过调用System.currentTimeMillis()返回当前时间。

获得一个long类型的以毫秒为单位的当时时间值。

21.通过显式转换,浮点数可以被转换为整数。

总是可以将一个数值赋给支持更大数值范围的类型的变量。

22.类型转换是将一种数据类型的值转换为另一种数据类型的值的操作。

将范围较小的类型转换为范围较大的类型称为扩展类型,反之则称为缩小类型,但是缩小类型必须显示完成。

23.类型转换不改变被转换的变量(double d = 4.5; int i = (int)d; d在类型转换之后值不变)。

24.只要整型字面值是在目标变量允许的范围内,那么将整型字面值赋给short型或byte 型变量时,就不需要显式的类型转换(int i = 1; byte b = i;)。

25.软件开发生命周期是一个多阶段的过程,包括需求规范、分析、设计、实现、测试、部署和维护。

开发软件产品是一个工程过程。

26.需求规范是一个规范化的过程,旨在理解软件要处理的问题,以及将软件系统的功能详细记录到文档中。

系统分析旨在分析数据流,并且确定系统的输入和输出。

实现是将系统设计翻译成程序。

实现也称为编码(编写代码)。

测试确保代码符合需求规范。

部署使得软件可以被使用。

维护是对软件产品进行更新和改进。

27.为变量选择最合适的数据类型。

28.将一个double型的数转换为int型的数可能会损失精度,会导致不精确的结果。

相关主题