注释、标识符、关键字

注释

  • 当项目结构复杂起来,就需要注释。类似读古文的注解。

  • 注释不会被执行,是写给看代码的人看

  • 书写注释非常重要是一个非常好的习惯

  • 平时写代码一定不要注意规范

  • Java中有三种注释:

    1. 单行注释 ://
    2. 多行注释 : /* */
    3. 文档注释:/** * */

标识符

  • 关键字 不能用来作名字 (如:class,public,static······)

  • Java 所有的组成部分都需要名字。类名、变量名以及方法名都会被称为标识符

标识符注意点

  • 所有的标识符都应该以字母(a-z大小写),美元符($),或者下划线(_)开始
  • 首字符之后可以使用字母,美元符,下划线,数字的任何字符组合
  • 井号%等都不能出现在命名内
  • 不能使用关键字作为变量名或方法名
  • 标识符是大小写敏感的
  • 可以使用中文名,但是一般不建议这样去使用,也不建议使用拼音,很low

数据类型

强类型语言

  • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用(安全性高,速度较慢)

弱类型语言

  • 变量可以随意一点

Java的数据类型分为两大类

  • 基本类型(primitive type)

1byte=8bit

  • 整数类型

    • byte 1个字节
    • short 2字节
    • int 4字节
    • long 8字节 数字后面加上L
    • 浮点类型
      • float 4字节 数字后面加上F
      • double 8字节
    • 字符类型
      • char 2字节
    • boolean类型 1位
  • 引用类型(reference type)

    • 接口
    • 数组
  • 拓展:整数进制前缀 二进制:0b 八进制:0 十六进制:0x
    浮点数:最好避免完全使用浮点数进行比较浮点数是有 限的离散的使用BigDecimal这个类

    ​ 字符类型:Unicode表 U0000-----UFFFF '\u0061'转义

    ​ 转义字符:\t制表符 \n换行符

类型转换

  • byte,short,char-->int-->long-->float-->double

  • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换

  • 运算中,不同类型的数据先转化位统一类型,然后进行运算

  • 强制类型转换 从高到低 数据类型 变量名 = (数据类型)变量名

  • 自动类型转换 从低到高

变量、常量、作用域

  • 变量是什么:可以变化的量!

  • Java是一种强类型语言,每个变量都必须声明棋类型

  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域

    type varName [=value] [{,varName[=value]}];

    //数据类型 变量名 = 值 ;可以使用逗号隔开来声明多个同类型变量

  • 注意事项

    • 每个变量都有类型,类型可以是基本类型,也可以是引用过类型。
    • 变量名必须是合法的标识符。
    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
  • 类变量

  • 实例变量

  • 局部变量


  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
  • 所谓常量可以理解成一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变
    fianl 常量名=值;
    fianl double PI=3.14;
  • 常量名一般使用大写字符

变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man。GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

运算符

  • Java语言支持如下运算符:

    • 优先级()多大括号

    • 算术运算符:+,-,*,/,%,++,····

    • 赋值运算符:=

    • 关系运算符:>,<,>=,==,!=,instanceof

    • 逻辑运算符:&&,||,!

    • 位运算符:&,|,^,~,>>,<<,>>>

    • 条件运算符:?:

    • 扩展赋值运算符:+=,-=,*=,/=

补充:位运算

​ A = 0011 1100
​ B = 0000 1101

    A&B 0000 1100 (如果对应位都为1才为1,其余为0)
    A|B 0011 1101 (如果对应位都为0才为0,其余为1)
    A^B 0011 0010 (如果对应位相同位0,其余为1)
    ~B  1111 0010 (对应位取反)
    2*8 = 2*2*2*2
    <<  *2
    >>  /2
    0000 0000     0
    0000 0001     1
    0000 0010     2
    0000 0011     3
    0000 0100     4
    0000 1000     8
    0001 0000     16
    2<<3=2*2*2*2

包机制

  • 为了更好地组织类,Java提供了包机制,用于区别类名地命名空间

  • 包语句地语法格式为:

    package pkg1[. pkg2[. pkg3...]];

  • 一般利用公司域名倒置作为包名;

  • 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句可完成次功能

    import package1[.package2····].(classsname|*);

  • .*通配符导入这个包下所有类

JavaDoc

  • Javadoc命令是用来生产自己API文档的
  • 参数信息
    • @author 作者名
    • @version 版本号
    • @since 指明需要最早使用的jdk版本
    • @param 参数名
    • @return 返回值情况
    • @throws 异常抛出情况