Java语言基础1-关键字、标识符、常量和变量

  1. 关键字-标识符-常量和变量-运算符-流程控制-方法-数组

1.关键字 keyword

Java系统中已经赋予了特殊含义的单词

特点:全部是小写字母注意:

Java中的保留字:现在没有使用,以后有可能会使用的单词

例:goto,const

案例:

public class Demo{
    public static void main(String[] args){
       System.out.println(“Hello World”);
    }
}

关键字解析:
public:权限修饰符,说明此类是公共的
class:用于定义类
static:静态的
void:不需要返回值

2.标识符

用于给方法,变量,类,接口等命名的字符序列

2.1组成规则:

  • 由26个英文字母大小写,数字,_,$ 组成
  • 不能以数字开头
  • 不可以使用关键字,但是可以包含关键字
  • Java中严格区分大小写:main ≠ Main

2.2命名规范:

  • 包名:多单词组成时所有字母都小写(以后详讲):xxxyyyzzz
  • 类名,接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz,Test
  • 变量名,方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz,main
  • final变量名:所有字母都大写,多单词时单词之间用下划线分隔:XXX_YYY_ZZZ,MAX_VALUE

2.3在命名时要做到见名知意

public class AAA{...} x
public class Test{...}  x
public class Person{...} 

3.常量

3.1常量(字面量)

常量(字面量)表示不能改变的数值(程序中直接出现的值)
Java中常量(字面量)的分类:

  • 整数常量:直接出现的整数
  • 小数常量:直接出现的小数
  • 布尔(boolean)型常量:只有两个值:true 和 false
  • 字符常量:将一个数字,字母或者符号用单引号('')括起来
  • 字符串常量:将一个或者多个字符用双引号("")括起来
  • null常量:只有一个数值:null

对于整数:有四种表现形式
二进制:由0,1组成 ,满2进1.用0b/0B开头表示
八进制:由0-7组成 ,满8进1. 用0开头表示
十进制:由0-9组成 ,满10进1.
十六进制:由0-9,A-F组成,满16进1. 用0x/0X开头表示


3.2二进制

计算机底层都是以二进制存储数据的,多个位组合起来可以表示更多的状态.

  进制的基本转换:

十进制 二进制 互转
十进制转成二进制 除以2取余数,将余数倒排
二进制转成十进制 乘以2的幂数,将结果相加
十进制 八进制 互转
十进制 十六进制 互转
二进制和八进制,十六进制互转(8421法则)

3.3原码反码补码

见 原码, 反码, 补码 详解

4.变量

内存:就是程序运行的地方,存放着数据和指令
不同的数据存储在不同的空间,互不影响
内存空间使用之前必须先申请

如果一个数据已经存储到内存中了,怎么找到它呢?
只要在申请空间的时候,给这个空间起一个名字就可以了
使用变量的时候,通过变量名就可以找到变量的值了。

3.1变量的概念:

内存中的一块存储区域
该区域有自己的名称(变量名)和类型(数据类型)

3.2为什么要定义变量:

          就是为了使用内存空间

3.3变量的三个要素:

  1. 类型(数据类型:能存放的数据类型)
  2. 变量名(标识符:通过标识符可以访问内存空间里的值)
  3. 值(存储的内容)

3.4定义变量的格式:

3.5 8大基本数据类型:

    note:

      整数默认:int 小数默认:double
      字符串是类:String,是引用数据类型

3.6 作用和初始化

  • 作用域:Scope

变量定义在哪个大括号里,它的作用域就是所在的大括号(代码块:block)
同一个作用域中,不能定义同名的变量(类型不同也不行)

  • 初始化值:

初始化有两种格式,定义时赋值 或 先定义,后赋值
变量在使用前一定要赋值

  • 一行上最好只定义一个变量:

一行上可以定义多个变量,但是不建议,可读性差

3.7类型转换

类型相同的数才能进行运算

  1. 不同类型的数进行运算,首先要进行类型转换,变成相同类型
  2. 有的转换是系统自动完成的(自动类型转换/隐式类型转换)
  3. 有的是需要手动完成的(强制类型转换/显式类型转换):什么时候要用强制类型转换(大范围转小范围)

 

表达式的数据类型自动提升:找标准
1.所有的byte型、short型和char的值将被提升到int型
char型参与运算实际上使用的是对应的Unicode编码值
如果表达式中还有更大表数范围的类型,则继续提升
byte b = 10;System.out.println(b + 2 + 1.2);

2.

 3.boolean类型不参与数值运算,也不能和其它类型进行转换

 

原文地址:https://www.cnblogs.com/wqbin/p/11134735.html