Java概述:

        计算机语言可以分为:机器语言,汇编语言,高级语言。

        计算机只能识别机器语言,由二进制0 1 组成的编码,目前通用的编程语言是汇编语言和高级语言

       Java划分为三个技术平台——Java SE(核心部分),Java EE,Java ME(这两个是由Java SE 的基础上发展而来的)。

Java语言的特点:

        ①简单易用,②安全可靠,③跨平台,④面向对象,⑤支持多线程

Sun公司提供JDK和JRE

JDK:包括Java编译器,Java运行工具,Java文档生成工具,Java打包工具。

JRE:是Java运行环境,他只包括Java运行工具

下面是安装JDK等这个不做介绍…………

Java的运行机制:

       Java运行时需要经过两个部分,编译和运行。

       先将扩展名为Java的源文件进行编译,生成扩展名为class的字节码文件,然后Java虚拟机将字节码文件进行解释执行,并将结果显示出来。

为了方便理解Java程序运行的过程,我们把具体步骤写下来。

       ①编写一个 Hello world.Java的文件。

       ②使用“Javac Hello world.Java”命令开启Java编译器并进行编译。编译结束后,会自动生成一个Hello World. class的字节码文件

        ③使用“ Java Hello world”命令启动Java虚拟机运行程序,Java虚拟机首先将编译好的字节码文件加载到内存,这个过程被称为类加载,它是由类加载器完成的,然后虚拟针对加都到内在中的Java类进行解释执行,便可看到运行结果。

          通过上面的分析不难发现,Java程序是由虚拟机负责解释执行的,而并非操作系统。

          这样做的好处是可以实现跨平台性,也就是说针对不同的操作系统可以编写相同的程序,只需安装不同版本的虚拟机即可。

Java编程基础:   

关键字和标识符(以前总是搞混,复习的时候,记录一下) (1)关键字——java语言定义的,具有特定含义的词,比如public,class,static,void等; (2)标识符——用户自己定义的,可用于命名变量名、常量名、类名、对象名、方法名,参数名,包名等;

         标识符可以由任意顺序的大小写字母,数字,下划线,美元符号组成,但不能以数字开头,也不能是Java中的关键字。 命名规范问题:(不这样也不错,但是不规范) (1)类名:首字母要大写 (2)关键字、变量、对象、方法、包名:首字母要小写,如果是多个单词,第二个单词首字母可以大写,比如setPeople (4)常量:一般全部要大写(定义就是添加一个final关键字即可),如下面所示

基本数据类型:

Java中对应各国语言名称的类 java分几种语言_运算符

字节型 byte:1个字节(8位,256)

短整型 short:2个字节

整型 int:4个字节

长整型 long:8个字节

字符型  char:2个字节

Java中对应各国语言名称的类 java分几种语言_Java中对应各国语言名称的类_02

Java中对应各国语言名称的类 java分几种语言_运算符_03

 

变量的类型转换:

隐式转换(自动类型转换)

如果以下 2 个条件都满足,那么将一种类型的数据赋给另外一种类型变量的时,将执行自动类型转换。

两种数据类型彼此兼容

目标类型的取值范围大于源数据类型(低级类型数据转换成高级类型数据)

当以上 2 个条件都满足时,拓宽转换(widening conversion)发生。例如 byte 类型向 short 类型转换时,由于 short 类型的取值范围较大,会自动将 byte 转换为 short 类型。

在运算过程中,由于不同的数据类型会转换成同一种数据类型,所以整型、浮点型以及字符型都可以参与混合运算。自动转换的规则是从低级类型数据转换成高级类型数据。转换规则如下:

数值型数据的转换:byte→short→int→long→float→double。

字符型转换为整型:char→int。

以上数据类型的转换遵循从左到右的转换顺序,最终转换成表达式中表示范围最大的变量的数据类型。

显式转换(强制类型转换)

尽管自动类型转换是很有帮助的,但并不能满足所有的编程需要。例如,如果你需要将 double 型的值赋给一个 int 型的变量,你将怎么办?

这种转换不会自动进行,因为 double 型的变化范围比 int 型的要小。这种转换有使成为“缩小转换”,因为你肯定要将源数据类型的值变小才能适合目标数据类型。

所以当两种数据类型不兼容,或目标类型的取值范围小于源类型时,自动转换将无法进行,这时就需要进行强制类型转换。

上述代码中首先将 double 类型变量 e 的值强制转换成 int 类型,然后将值赋给 s,但是变量 e本身的值是没有发生变化的。
在强制类型转换中,如果是将浮点类型的值转换为整数,直接去掉小数点后边的所有数字;而如果是整数类型强制转换为浮点类型时,将在小数点后面补零。

Java运算符:

算数运算符,赋值运算符,逻辑运算符;

表 1 一元算术运算

运 算 符

名 称

说 明

例 子


取反符号

取反运算

b=-a

++

自加一

先取值再加一,或先加一再取值

a++ 或 ++a

--

自减一

先取值再减一,或先减一再取值

a-- 或 --a

表 2 二元算术运算

运 算 符

名 称

说 明

例 子

+


求 a 加 b 的和,还可用于 String 类型,进行字符串连接操作

a + b

-


求 a 减 b 的差

a - b

*


求 a 乘以 b 的积

a * b


求 a 除以 b 的商

a / b

%

取余

求 a 除以 b 的余数 

a % b

 

 

 

表 1 赋值运算符和算数运算符组成的复合赋值运算的含义及其使用实例

运算符

含义

实例

结果

+=

将该运算符左边的数值加上右边的数值, 其结果赋值给左边变量本身

int a=5; a+=2;

a=7

-=

将该运算符左边的数值减去右边的数值, 其结果赋值给左边变量本身

int a=5; a-=2;

a=3

*=

将该运算符左边的数值乘以右边的数值, 其结果赋值给左边变量本身

int a=5; a*=2;

a=10

/=

将该运算符左边的数值整除右边的数值, 其结果赋值给左边变量本身

int a=5; a/=2;

a=2

%=

将该运算符左边的数值除以右边的数值后取余,其结果赋值给左边变量本身

int a=5; a%=2;

a=1

表 1 逻辑运算符的用法、含义及实例

运算符

用法

含义

说明

实例

结果

&&

a&&b

短路与

ab 全为 true 时,计算结果为 true,否则为 false。

2>1&&3<4

true

||

a||b

短路或

ab 全为 false 时,计算结果为 false,否则为 true。

2<1||3>4

false

!

!a

逻辑非

a 为 true 时,值为 false,a 为 false 时,值为 true

!(2>4)

true

|

a|b

逻辑或

ab 全为 false 时,计算结果为 false,否则为 true

1>2|3>5

false

&

a&b

逻辑与

ab 全为 true 时,计算结果为 true,否则为 false

1<2&3<5

true