哈哈哈——Java复习__Day_1

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关键字即可),如下面所示

基本数据类型:

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

  • 短整型 short:2个字节

  • 整型 int:4个字节

  • 长整型 long:8个字节

  • 字符型  char:2个字节

 

变量的类型转换:

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

如果以下 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<4true
||a||b短路或ab 全为 false 时,计算结果为 false,否则为 true。2<1||3>4false
!!a逻辑非a 为 true 时,值为 false,a 为 false 时,值为 true!(2>4)true
|a|b逻辑或ab 全为 false 时,计算结果为 false,否则为 true1>2|3>5false
&a&b逻辑与ab 全为 true 时,计算结果为 true,否则为 false1<2&3<5true

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值