第二天 Java基础总结 3

Java关键字、保留字、标识符

关键字:被Java语言赋予了特定含义的一些字符!关键字中所有字母都为小写。好比汉字中的专有名词,例如:中国、北京、上海等。一般我们不能将这些词用在其他地方,改变其含义。

 

关键字分类:

用于定义数据类型的关键字

class

interface

byte

short

int

long

float

double

char

boolean

void

 

 

 

 

用于定义数据类型值的关键字

true

false

null

 

 

用于定义流程控制的关键字

if

else

switch

case

default

while

do

for

break

continue

return

 

 

 

 

用于定义访问权限修饰符的关键字

private

protected

public

 

 

用于定义类,函数,变量修饰符的关键字

abstract

final

static

synchronized

 

用于定义类与类之间关系的关键字

extends

implements

 

 

 

用于定义建立实例及引用实例,判断实例的关键字

new

this

super

instanceof

 

用于异常处理的关键字

try

catch

finally

throw

throws

用于包的关键字

package

import

 

 

 

其他修饰符关键字

native

strictfp

transient

volatile

assert

2Java中的标识符

可简单理解为在Java程序中为了增强阅读性自定义的名称。比如:类名,方法名,变量名等。

标识符组成:

(1) 标识符由字母、数字、下划线、$组成,不能以数字开头,注意:此处的字母还可以是中文,日文等;

(2) 标识符大小写敏感;

(3) 标识符不得使用java中的关键字和保留字;

(4) 别用Java API里面的类名作为自己的类名。

注意:在起名字的时,只要标识符不是关键字就可以了,但为了提高阅读性,经常用有意义的英文单词作为标识符。

标识符书写规范:

Java中的名称规范:

包名:多单词组成时所有字母都小写。xxxyyyzzz

类名接口名:多单词组成时,所有单词的首字母大写。XxxYyyZzz

变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。xxxYyyZzz

常量名:所有字母都大写。多单词时每个单词用下划线连接。XXX_YYY_ZZ


Java 语言 是强类型语言,强类型语言包含两个方面

1.所有变量必须先声明,后使用 2.指定类型的变量只能接受类型与之匹配的值。


Java语言支持的类型分两类:

一、基本数据类型

基本数据类型 包括boolean 类型 和数值类型

数值类型 :整数类型,浮点类型

整数类型:byte(1字节)、 short(2字节)、 int(4字节) 、 long(8字节)  、 char(2字节)注意 char 与C语言不同 C语言中 char 是一个字节的。

浮点类型:float (4字节)、double(8字节)

在Java 语言中boolean 类型的数值 只能是true 和 false,不能用0 或者非0 表示。


二、引用数据类型

引用类型 :类,接口, 数组类型,还有 null 类型。


数据类型转换

自动类型转换:

容量小的类型可自动转换为容量大的数据类型(类型自动提升);

byte,short,char int long float double

byteshortchar之间不会相互转换,他们在计算时首先会转换为int类型。


强制类型转换:

容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度的降低或溢出,使用时要格外注意。

逻辑运算符

当需要判断某些数据符合某个区间,比如人的年龄符合某一范围等。发现使用比较运算没法完成。Java给我们提供另外一直机制,逻辑运算。逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6

1、逻辑运算符号:

 

逻辑运算符。用来连接boolean型表达式的。

& :

| :或

^ : 异或。

!:非。

&& 短路与 || 短路或

2、运算规律

int x = 7;

 

x>2 & x<5

x<2 | x>5

 

& :两边都为true,结果是true。否则为false

     两边只要有一个false。结果必然是false

true  &  true = true;

true  & false = false;

false &  true = false;

false & false = false;

 

| :两边都为false,结果是false。否则为true

   两边只要有一个true。结果必然是true

true  |  true = true;

true  | false = true;

false |  true = true;

false | false = false;

 

^ : 异或。

  两边相同为false。两边不同为true

true  ^  true = false;

true  ^ false = true;

false ^  true = true;

false ^ false = false;

 

!:非

非真为假,非假为真

!true = false;

 

&”和“&&”的区别:单与时,左边无论真假,右边都进行运算;双与时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

|”和“||”的区别同理,双或时,左边为真,右边不参与运算。


位运算符

位运算:主要说的是二进制数位运算。

1、运算符符号:

 

& 按位与运算 ,运算原则:相同二进制数位上数值为1,结果为1,否则结果为0

 

3 & 5   先把 35以二进制表示,再进行按位于运算:

 

十进制           二进制                          结果(十进制)

   3 00000000_00000000_00000000_00000011

   5 00000000_00000000_00000000_00000101

  -------------------------------------------------------------------------------------------------

   & :    00000000_00000000_00000000_00000001 1

 

所以3 & 5等于 1.

 

| 按位或运算,运算原则:相同二进制数位上数值为0,结果为0,否则结果为1

3 | 5   先把 35以二进制表示,再进行按位于运算:

十进制           二进制                         结果(十进制)

   3 00000000_00000000_00000000_00000011

   5 00000000_00000000_00000000_00000101

-----------------------------------------------------------------------------------------

  | :   00000000_00000000_00000000_00000111     7

 

所以3 | 5等于 7.

20次方 + 2 1次方  +  22次方  =  1 + 2 + 4 = 7

 

^ 按位异或,运算原则:参与运算的两个数相应位相同则结果为0,异号则为1

 

十进制           二进制                        结果(十进制)

   3 00000000_00000000_00000000_00000011

   5 00000000_00000000_00000000_00000101

-----------------------------------------------------------------------------------------

  ^ :   00000000_00000000_00000000_00000110 6

 

 

所以3 ^  5等于 6.

 

~ 按位取反,运算原则:二进制数位上0110

 

十进制           二进制                        结果(十进制)

     5 00000000_00000000_00000000_00000101

-----------------------------------------------------------------------------------------

  ~ :   11111111_11111111_11111111_1111010 -6

 

 

所以~5等于 -6.

左移操作“<<”:将运算数的二进制码整体左移指定位数,左移之后的空使用“0”来补充,移出去的二进制数忽略不计。

9 << 2 :

十进制           二进制                        结果(十进制)

     9 00000000_00000000_00000000_00001001

-----------------------------------------------------------------------------------------

      00000000_00000000_00000000_000010010036

所以9<<2等于 36.

规律:<<:相当于给原数乘以2的倍数

 

右移操作“>>”:将运算数的二进制码整体右移指定位数,右移之后的空使用“符号位”来补充。移出去的二进制数忽略不计。若是正数使用“0”补充;若是负数使用“1”补充;

 

9 >>2 :

十进制           二进制                        结果(十进制)

     9 00000000_00000000_00000000_00001001

-----------------------------------------------------------------------------------------

        0000000000_00000000_00000000_00001001    2

所以9>>2等于 2.

规律:>>:相当于给原数除以2的倍数

 

-6 >> 2:

十进制           二进制                        结果(十进制)

 

   -6    11111111_11111111_11111111_1111010

-----------------------------------------------------------------------------------------

         1111111111_11111111_11111111_1111010

所以-6>>2等于 -2.

 

 

无符号右移">>>":将运算数的二进制码整体右移指定位数,右移之后的空使用“0”来补充

 

2、位运算应用

需求1:最有效率运算2乘以8.通过位移运算。2<<3

需求2,对两个整数变量的值进行互换(不需要第三方变量)

 

//通过第三方变量的形式进行置换。

int a = 3, b = 7;

int temp = a;

a = b;

b = temp;

 

//通过和的形式。有个弊端,两个数据较大,可能会超出int范围。

a = a + b;//a = 3 + 7;

b = a - b;//b = 3 + 7 - 7b = 3;

a = a - b;//a = 3 + 7 - 3;  a = 7;

 

//技巧。异或。

a = a ^ b;// a = 3 ^ 7;

b = a ^ b;// b = 3 ^ 7 ^ 7;

a = a ^ b;// a = 3 ^ 7 ^ 3;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值