Java 之基础程序设计
存储器的存储单位有比特(bit)和字节(byte),它们的区别是:
计算机就是一系列的电路开关。每个开关存在两种状态:关和开。如果电路是开的,它的值是 1。如果电路是关的,它的值是 0。一个 0 或者一个 1 存储为一个比特(bit),是计算机中最小的存储单位;
计算机中是最基本的存储单元是字节(byte)。每个字节由 8 个比特构成。计算机的存储能力是以字节来衡量的。
[](()1.4 内部时钟与像素
每台计算机都有一个内部时钟,该时钟以固定速度发射电子脉冲。时钟速度越快,在给定的时间段内执行的指令就越多。速度的计量单位是赫兹,1Hz 相当于每秒 1 个脉冲。随着 CPU 速度不断提高,目前以千兆赫 GHz 来表述。
关于像素的分辨率与像素密度的关系如下,也相当于是一个扩展知识。
[](()2 初识 Java
============================================================================
[](()2.1 Java 的运行流程
.java
源文件通过译码器编译成.class
字节码文件,然后利用解码器运行在不同的 Java 虚拟机中。对应的指令为:
javac hello.java
java hello
[](()2.2 Java 语言的两种核心机制
1)Java 虚拟机(Java Virtual Machine)
JVM 是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器;
对于不同的平台,有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了一次编译,到处运行;
只有某平台提供了对应的 Java 虚拟机,Java 程序才可在此平台运行。
2)垃圾回收机制(Garbage Collection)
[](()2.3 Java 的注释方法
单行注释
//
多行注释
/* */
文档注释
/** */
:
单行注释和多行注释,注释了的内容不参与编译。换句话说,编译以后生成的 .class
结尾的字节码文件中不包含注释掉的信息。而文档注释的使用的注释内容可以被 JDK 提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。
javadoc 的使用方法:
在代码中书写类与方法的文档注释,如下图:
在命令行中输入如下命令,其中
-d
存放的是解析后的文件位置,-author -version
中的内容必须在代码中有体现。
之后双击 mydoc 文件夹中的 index.html 文件就可以看到该程序的说明文档。
[](()3 Java 的基本程序设计结构
===================================================================================
[](()3.1 Java 的命名规则
参考阿里的 Java 程序规范一书,同时变量的命名法看下图:
同时,要注意,变量名不能命名为 Java 的关键字与保留字。
关键字:
保留字:
goto
const
[](()3.2 Java 的变量
[](()3.2.1 定义
变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值。
变量存储在内存中的一个区域,通过使用变量名来访问这块区域的数据,该区域的数据可以在同一类型范围内不断变化。
变量的作用域在其定义所在的一对 { }
内,它只有在其作用域内才有效。同时,同一个作用域内,不能定义重名的变量。
[](()3.2.2 变量的数据类型
字符型 char 指的是单个单词,对于中文或者字符串要用 String;
一般常用 int,double;
float 变量值要这么写:
float height =175.2f
;就像字符char level='A';
要加双引号一样;在 Java 中,双引号
“ ”
表示字符串,单引号‘ ’
表示字符。
七大基本数据类型所占的字节数参考:【[传送门](()】。
char 类型也可以存储一个汉字,在 String 中,随着编码方式的不同,中文字符占有字节数也不同,在 UTF-8 编码下,一个英文符号占有一个字节,一个中文字符占有 3 个字节。
[](()3.2.3 数据类型间的转换
1)自动类型提升:
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。(此时的容量大小指的是,表示数的范围的大和小,而不是各个数据类型的位数。比如: float 容量要大于 long 的容量)
byte 、char 、short --> int --> long --> float --> double
byte、short、char 三者做运算时,三者在计算时会首先转化为 int 类型;
任何基本数据类型的值和字符串型进行连接(+)运算时,基本数据类型的值都会自动转化为字符串类型。
2)强制类型转换:
需要使用强转符:( )
。注意点:强制类型转换,可能导致精度损失。而且它是向下取整,而不是四舍五路。
[](()3.2.4 成员变量与局部变量
[](()3.3 控制流程
[](()3.3.1 循环
1)for 函数的执行顺序
评论