Java基础语法2

Java基础语法1:https://blog.csdn.net/weixin_51349113/article/details/120388120

目录

4、变量与常量

    4.1、标识符和关键字

    4.2、变量

    4.3、常量

5、运算符


4、变量与常量

    4.1、标识符和关键字

        4.1.1标识符 

        定义:标识符是用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。

        Java标识符由任意顺序的字母,下划线,美元符号和数字组成,并且第一个字符不能是数字,标识符不能是Java中的保留关键字。合格标识符如:name,user_age,$dollar;不合格标识符如:int,01name,

        4.1.2关键字

        Java关键字是电脑语言里事先定义的,有特别意义的标识符,有时又叫保留字,还有特别意义的变量。Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。

关键字

含义

abstract

表明类或者成员方法具有抽象属性

assert

断言,用来进行程序调试

boolean

基本数据类型之一,声明布尔类型的关键字

break

提前跳出一个块

byte

基本数据类型之一,字节类型

case

用在switch语句之中,表示其中的一个分支

catch

用在异常处理中,用来捕捉异常

char

基本数据类型之一,字符类型

class

声明一个类

const

保留关键字,没有具体含义

continue

回到一个块的开始处

default

默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现

do

用在do-while循环结构中

double

基本数据类型之一,双精度浮点数类型

else

用在条件语句中,表明当条件不成立时的分支

enum

枚举

extends

表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口

final

用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量

finally

用于处理异常情况,用来声明一个基本肯定会被执行到的语句块

float

基本数据类型之一,单精度浮点数类型

for

一种循环结构的引导词

goto

保留关键字,没有具体含义

if

条件语句的引导词

implements

表明一个类实现了给定的接口

import

表明要访问指定的类或包

instanceof

用来测试一个对象是否是指定类型的实例对象

int

基本数据类型之一,整数类型

interface

接口

long

基本数据类型之一,长整数类型

native

用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的

new

用来创建新实例对象

package

private

一种访问控制方式:私用模式

protected

一种访问控制方式:保护模式

public

一种访问控制方式:共用模式

return

从成员方法中返回数据

short

基本数据类型之一,短整数类型

static

表明具有静态属性

strictfp

用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范

super

表明当前对象的父类型的引用或者父类型的构造方法

switch

分支语句结构的引导词

synchronized

表明一段代码需要同步执行

this

指向当前实例对象的引用

throw

抛出一个异常

throws

声明在当前定义的成员方法中所有需要抛出的异常

transient

声明不用序列化的成员域

try

尝试一个可能抛出异常的程序块

void

声明当前成员方法没有返回值

volatile

表明两个或者多个变量必须同步地发生变化

while

用在循环结构中

关键字一律用小写字母标识,按其用途划分为如下几组。

(1)用于数据类型。

用于数据类型的关键字有 boolean、byte、char、 double、 float、int、long、new、short、void、instanceof。

(2)用于语句。

用于语句的关键字有break、case、 catch、 continue、 default 、do、 else、 for、 if、return、switch、try、 while、 finally、 throw、this、 super。

(3)用于修饰

用于修饰的关键字有 abstract、final、native、private、 protected、public、static、synchronized、

transient、 volatile。

(4)用于方法、类、接口、包和异常。

用于方法、类、接口、包和异常的关键字有 class、 extends、 implements、interface、 package、import、throws。

还有些关键字,如 future、 generic、 operator、 outer、rest、var等都是Java保留的没有意义的关键字。 

另外,Java还有3个保留字:goto、const、null。它们不是关键字,而是文字。包含Java定义的值。和关键字一样,它们也不可以作为标识符使用。

    4.2、变量

        程序执行过程中,其值能被改变的量称为变量,变量可以被多次赋值。

       4.2.1 声明变量:

        变量使用前需要先声明,定义的目的是要告诉编译器这个变量的数据类型,这样编译器才知道需要配置多少空间给它,以及它能存放什么样的数据。在程序运行过程中,空间内的值是变化的,这个内存空间就称为变量,空间的名字就是变量名,内存空间内的值就是变量值。变量的命名必须是合法的标识符且变量名之间不可重复(局部变量可与成员变量的名字相同),在声明变量时可以不赋值,也可以赋给初值。

    声明变量如下:

int x;             //声明int型变量
int age = 1;       //声明int型变量且赋初值
char ischar = 's'; //声明char型变量且赋初值

        4.2.2变量的有效范围:

        变量被定义出来后暂存在内存中,等到程序执行到某一个点,该变量就会被释放掉,这就是变量的生命周期。变量的有效范围就是指程序代码能够访问该变量的区域,若超出该区域,则在编译时会出现错误。一般,根据变量的有效范围将变量分为“成员变量”和“局部变量”。

            成员变量:

            在类体中所定义的变量称为成员变量,成员变量在整个类中都有效。类的成员变量又可分为两种,既静态变量和实例变量。

            在成员变量的类型的前面加关键字 static,这样的成员变量称为静态变量。静态变量的有效范围可以跨类,对于静态变量,除了能在定义它的类内存取,还可以以“类名.静态变量”的方式在其他类内使用。

    静态变量与实例变量声明如下:

class var{
    int x;              //声明 int 型实例变量 x
    static int y = 520;  //声明 int 型静态变量 y 并赋值
}

            局部变量:

            在类的方法体中定义的变量,称为局部变量。局部变量只在当前代码块中有效。

            在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只在当前定义的方法内有效,不能用于类的其他方法中。当方法被调用时,Java 虚拟机为方法中的局部变量分配内存,当该方法的调用结束后,则会释放方法中局部变量占用的内存空间,局部变量也将会销毁。

            局部变量可与成员变量的名字相同,此时成员变量将在此方法中失效。

    如:

//例2.4

package package01;

public class hello_world {
    static int x = 0;                         //在类外声明成员变量 x 并赋值为 0
    public static void main(String[] args) {  
        int x = 520;                          //在类内声明局部变量 x 并赋值为 520
        System.out.println(x);
    }
}

    例2.4的输出结果为:520 。

    4.3、常量

        程序执行过程中,其值不能被改变的量称为常量,常量在整个程序中只能被赋值一次。

        4.3.1声明常量:

        Java中声明一个常量除了要指定数据类型外,还需要通过 final 关键字进行限定,声明常量的标准语法:final 数据类型 常量名称 [ = 值 ];

    声明常量如下:

final float PI = 3.1415926f;    //声明 float 型常量 PI 并赋值
final boolean BOOL= true;       //声明 Boolean 型常量 BOOL 并赋值
final int number;               //声明 int 型常量 number     
number = 520;                   //对常量 number 赋值

        4.3.2常量的作用:

  1. 提高程序的可读性,常量易于理解的名称可替代含义不明确的数字或字符串。
  2. 利于程序的修改,在完整程序中如果要修改多次出现的常量值,只需要在一个地方改动。
  3. 常量不易导致程序出错,将一个值赋给程序中的一个常量,若该常量已经有一个值,则编译器会进行报错。

5、运算符

    运算符是一些特殊的符号,主要用于数学函数,一些类型的赋值运算符语句和逻辑比较方面。

    整理Java运算符用法及优先级如下:

优先级

运算符

名称或含义

使用形式

结合方向

说明

1

[]

数组下标

数组名[常量表达式]

左到右

--

()

圆括号

(表达式)/函数名(形参表)

--

.

成员选择(对象)

对象.成员名

--

2

-

负号运算符

-表达式

右到左

单目运算符

~

按位取反运算符

~表达式

++

自增运算符

++变量名/变量名++

--

自减运算符

--变量名/变量名--

*

取值运算符

*指针变量

&

取地址运算符

&变量名

!

逻辑非运算符

!表达式

(类型)

强制类型转换

(数据类型)表达式

--

3

/

表达式/表达式

左到右

双目运算符

*

表达式*表达式

%

余数(取模)

整型表达式%整型表达式

4

+

表达式+表达式

左到右

双目运算符

-

表达式-表达式

5

<< 

左移

变量<<表达式

左到右

双目运算符

>> 

右移

变量>>表达式

6

大于

表达式>表达式

左到右

双目运算符

>=

大于等于

表达式>=表达式

小于

表达式<表达式

<=

小于等于

表达式<=表达式

7

==

等于

表达式==表达式

左到右

双目运算符

!=

不等于

表达式!= 表达式

8

&

按位与

表达式&表达式

左到右

双目运算符

9

^

按位异或

表达式^表达式

左到右

双目运算符

10

|

按位或

表达式|表达式

左到右

双目运算符

11

&&

逻辑与

表达式&&表达式

左到右

双目运算符

12

||

逻辑或

表达式||表达式

左到右

双目运算符

13

? : 

条件运算符

表达式1?

表达式2: 表达式3

右到左

三目运算符

14

=

赋值运算符

变量=表达式

右到左

--

/=

除后赋值

变量/=表达式

--

*=

乘后赋值

变量*=表达式

--

%=

取模后赋值

变量%=表达式

--

+=

加后赋值

变量+=表达式

--

-=

减后赋值

变量-=表达式

--

<<=

左移后赋值

变量<<=表达式

--

>>=

右移后赋值

变量>>=表达式

--

&=

按位与后赋值

变量&=表达式

--

^=

按位异或后赋值

变量^=表达式

--

|=

按位或后赋值

变量|=表达式

--

15

逗号运算符

表达式,表达式,…

左到右

--

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值