Java:(学习笔记)二、基础语法

  • 第三章---Java基础语法
  • 一、注释
  • 1、说明
  • 2、种类
  • 3、快捷键
  • 二、关键字
  • 三、变量
  • 四、标识符
  • 1、说明
  • 2、命名规则
  • 3、约定俗成的标识符写法
  • 五、运算符
  • 1、基本算术运算符
  • 2、关系运算符
  • 3、逻辑运算符
  • 3、其他运算符
  • 4、运算符优先级
  • 六、流程控制语句
  • 1、顺序结构
  • 2、选择结构
  • 3、循环结构
  • 七、数组
  • 1、概念
  • 2、格式
  • 3、元素默认值
  • 4、注意
  • 八、方法
  • 1、说明
  • 2、格式
  • 3、注意
  • 4、参数
  • 2、方法重载
  • Java笔记系列


第三章—Java基础语法

一、注释

1、说明

用某种特定的符号,标记的内容,不会被执行,对代码的功能进行说明。

2、种类

(1)单行注释

// 单行注释

(2)多行注释

/*
	多行注释
 **/

(3)文档注释

/**
 *	文档注释,用于对类,方法,属性进行说明,在调用时会提示
 */

3、快捷键

快捷键进行注释

功能效果

Ctrl + /

单行注释。

Ctrl + Shift + /

选中代码进行多行注释。

二、关键字

说明:Java自己保留的一些单词,作为特殊功能的单词。不能被用户来作为类名或者变量名,否则就会出错。

注:Java中还存在一些保留字(不是关键字),虽然还尚未使用,但是也不能作为类名或变量名。

关键字

含义

abstract

抽象类或方法

assert

用来查找内部程序错误

break

跳出一个switch或循环

byte

8位整数类型

case

switch的一个分支

catch

捕获异常的try块子句

class

定义一个类类型

continue

在循环末尾继续

default

switch的缺省语句

do

do/while循环最前面的语句

double

双精度浮点数类型

else

if语句的else子句

enum

枚举类型

extends

定义一个类的父类

final

一个常量,或不能覆盖的一个类或方法

finally

try块中总会执行的部分

float

单精度浮点数类型

for

一个循环类型

if

一个条件语句

implements

定义一个类实现的接口

import

导入一个包

instanceof

测试一个对象是否是某个类的实例

int

32位整型数

interface

接口,一种抽象类型,仅有方法和常量的定义

long

64位长整数型

native

由宿主系统实现的一个方法

new

分配新的类实例

null

一个空引用

package

包含类的一个包

private

表示私有字段,或者方法等,只能从类内部访问

protected

表示保护类型字段

public

表示共有属性或者方法

return

从一个方法中返回

short

16位整数类型

static

这个特性是这个类特有的,而不属于这个类的对象

strictfp

对浮点数计算使用严格的规则

super

超类对象或构造函数

switch

选择语句

synchronized

对线程而言是原子的方法或代码块

this

当前类的一个方法或构造函数的隐含参数

throw

抛出一个异常

throws

一个方法可能抛出的异常

transient

标志非永久性的数据

try

捕获异常的代码块

void

标记方法不返回任何值

volatile

标记字段可能会被多个线程同时访问,而不做同步

while

一种循环

三、变量

1、说明:是用来存储一个数据的内存区域,且里面存储的数据可以变化。

2、定义格式

//	数据类型	变量名称	=	初始值;
	int		   name		 =	  1;

四、标识符

1、说明

为类、属性、方法等命名时所使用的字符序列称为标识符。

2、命名规则

由数字、字母、下划线( _ )、美元符号( $ )组成。不能以数字开头,不能是关键字,不能有空格,并且区分大小写。

3、约定俗成的标识符写法

1)变量名称:满足标识符规则,建议全英文、有意义、首字母小写,满足“驼峰模式”,例如:studyNumber

2)类名称: 满足标识符规则,建议全英文、有意义、首字母大写,满足“驼峰模式”,例如:HelloWorld

3)常量:全部大写,复合单词中间使用下划线_隔开,例如:STATIC_DATA = 1

五、运算符

1、基本算术运算符

加(+)、减(-)、乘(*)、除(/)、取余(%)

注:作除运算时,两个整数相除还是整数,向下取整

2、关系运算符

相等(==)、不等(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)。成立时返回true,不成立返回false。

注:判断相等使用的是连续的两个“等于号”,即“==”

3、逻辑运算符

逻辑与(&)、逻辑或(|)、逻辑非(!)、逻辑异或(^)

短路与(&&):左边为 false,右边则不执行。

短路或(||):左边为 true, 右边则不执行。

3、其他运算符

(1)+符号作连接符

当+可以作为“加”运算符时,优先做加法(如5 + 4,结果是9),不能再做连接符使用(如"abc" + 4,结果是"abc4")

(2)自增自减运算符

变量自身的值加一(++):放在变量前,先加一再使用;放在变量后,先试用,再加一

变量自身的值减一(–):放在变量前,先减一再使用;放在变量后,先试用,再减一

(3)赋值运算符

赋值(=):将右边的数据赋值给左边的变量(如:int data = 1;)

扩展赋值运算符:加后赋值(+=)、减后赋值(-=)、乘后赋值(*=)、除后赋值(/=)、取余后赋值(%=)。

如:data += 1;与data = data + 1;一致

(4)三元运算符

格式:条件表达式 ? 值1 : 值2;

执行流程:首先计算关系表达式的值,如果值为true,返回值1,如果为false,返回值2。

如求两个数的最大值:num1 > num2 ? num1 : num2;

4、运算符优先级

优先级

运算符

结合性

1

()、[]、{}

从左向右

2

!、+、-、~、++、–

从右向左

3

*、/、%

从左向右

4

+、-

从左向右

5

«、»、>>>

从左向右

6

<、<=、>、>=、instanceof

从左向右

7

==、!=

从左向右

8

&

从左向右

9

^

从左向右

10

|

从左向右

11

&&

从左向右

12

||

从左向右

13

?:

从右向左

14

=、+=、-=、*=、/=、&=、|=、^=、~=、«=、»=、>>>=

从右向左

六、流程控制语句

1、顺序结构

程序代码按照先后顺序依次执行

2、选择结构

(1)if-else

格式1:
if (条件表达式) {
	语句体; 
}

格式2:
if (条件表达式) {
	语句体1;
} else {
	语句体2;
}

格式3:
if (条件表达式1) {
	语句体1;
} else if (条件表达式2) {
	语句体2;
} else if (条件表达式3) {
	语句体3;
} 
. . .
else {
	语句体n+1;
}

(2)switch

注意:

①表达式类型只能是byte、short、int、char,JDK5开始支持枚举,JDK7开始支持String。不支持double、float、long。

②case给出的值不允许重复,不能是变量。

③如果break,九会出现穿透现象,即执行完当前case的代码块而不停止继续执行下方的代码,直到遇到break或switch语句结束。

switch(表达式){
	case 值1:
		执行代码...;
		break;
	case 值2:
		执行代码...;
		break;
	… 
	case 值n-1:
		执行代码...;
		break;
	default:
		执行代码n;
}

(3)

3、循环结构

(1)for

格式:
for (初始化语句; 循环条件; 迭代语句) {
	循环体语句(重复执行的代码);
}

(2)while

格式:
while (循环条件) { 
	循环体语句(被重复执行的代码); 
	迭代语句; 
}

注:知道循环几次:使用for;不知道循环几次建议使用:while。

(3)do-while

格式:
do { 
	循环体语句; 
	迭代语句; 
} while (循环条件);

特点:一定会先执行一次

(4)跳转控制语句

break : 跳出并结束当前所在循环的执行。 只能用于结束所在循环, 或者结束所在switch分支的执行。

continue: 用于跳出当前循环的当次执行,进入下一次循环。只能在循环中进行使用。

七、数组

1、概念

数组就是用来存储一批同种类型数据的内存区域。

2、格式

数据类型[] 数组名 = new 数据类型[]{元素1,元素2 ,元素3… };

数据类型[] 数组名 = { 元素1,元素2 ,元素3,… };

数据类型[] 数组名 = new 数据类型[长度];

3、元素默认值

数据类型

默认值

byte、short、char、int、long

0

float、double

0.0

boolean

false

引用类型 :类、接口、数组、String等

null

4、注意

“数据类型[] 数组名”也可以写成 “数据类型 数组名[] ”

数组一旦定义出来,程序执行的过程中,长度、类型就固定了。

八、方法

1、说明

方法是一种语法结构,它可以把一段代码封装成一个功能,以方便重复调用。

提高了代码的复用性。,让程序的逻辑更清晰。

2、格式

修饰符 返回值类型 方法名( 形参列表 ){
	方法体代码(需要执行的功能代码)
return 返回值; }

3、注意

方法的运行区域在栈内存。

方法的编写顺序无所谓。

方法与方法之间是平级关系,不能嵌套定义。

4、参数

实参:如在方法内部定义的变量。

形参:如在定义方法时,“()”中所声明的参数。

Java的参数传递机制:值传递:在传输实参给方法的形参的时候,并不是传输实参变量本身,而是传输实参变量中存储的值。引用类型的参数传输的是存储的地址值。

2、方法重载

(1)说明:同一个类中,多个方法的名称相同,形参列表不同。

(2)优势:可读性好,方法名称相同提示是同一类型的功能,通过形参不同实现功能差异化的选择。