基础

注释

三种

单行注释

//

多行注释

/*   注释   */

文档注释

/** 
 *
 */

自定义注释

Settings -> Editor -> Color Scheme -> Java -> comments

标识符与关键字

标识符

  • 所有标识符都应该以字母,$,或者_开始
  • 不能使用关键字作为变量名或方法名
  • 标识符对大小写敏感

数据类型

强类型语言

要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

Java数据类型分为两类

  1. 基本类型(primitive type)

    • 数值类型
      • 整数类型
        • byte:1个字节范围,-128-127
        • short:2
        • int:4
        • long:8
      • 浮点类型
        • float:4
        • double:8
      • 字符char类型
    • boolean类型
  2. 引用类型(reference type)

  • 接口
  • 数组

拓展

整数拓展

进制

二进制:0b

十进制:

八进制:

十六进制:0x

浮点数拓展

float 有限,离散,舍入误差,接近但不等于

最好完全不要用浮点数来比较

用BigDecimal来比较

字符拓展

所有字符本质还是数字

编码 Unicode 2字节 0~65536

转义字符

\t 制表符

\n 换行

布尔值拓展

boolean flag =true
if(flag)
// Less is more

类型转换

低 ---------------------------------------------------------------->高

byte , short , char , int , long , float , double

运算中,不同类型的数据先转化为同一类型,然后再进行运算

强制类型转化

高--->低

(类型)变量名

自动转换

低--->高

Attention

  1. boolean不能转化
  2. 类型必须相关
  3. 转化内时可能存在内存溢出,精度问题
  4. 操作比较大的数时,注意溢出

JDK7的新特性,数字之间的下划线不会被打印

		int salary = 1000_1102_20;
        int years = 200;
        int result1 = salary * years; // 数据超出int存储范围,溢出
        long result2 = years * salary;  // 在转换之前已经溢出了,再转换就没用了
        long result3 = years * (long)salary; // 先转换,再用大范围数据类型接收
        System.out.println(result2);

字节

位(bit):是计算机 内部数据 存储的最小单位

字节(byte):是计算机中 数据处理 的基本单位,习惯上用大写B来表示

1B(Byte,字节)= 8 bit(位)

字符:是指计算机中使用的字母,数字,字和符号

变量

可以变化的量

java变量时程序中最基本的存储单元,其要素包括变量名,变量类型与作用域

作用域

  • 类变量
  • 实例变量:从属于对象,通过类使用,不初始化,除了基本类型,其余默认值都是null,布尔值为false
  • 局部变量:必须声明初始化值
public class Demo3_Scope {
    static int a = 0;  // 类变量
    String str = "heelo";  // 实例变量

    public static void setA(int a) {
        int i = 0;   // 局部变量

    }
}

常量

final修饰,初始化(initialize)后不能再改变值,不会变动的值

常量名常用大写

运算符

自增自减

a++,先使用再加1;

++a,先加1,再使用;

短路运算

&&,||

a&&b:如果a为假,则b不执行

位运算

public class Demo4_BitOperation {
    public static void main(String[] args) {
        /**

         A = 0011 1100
         B = 0000 1101

         A&B=0000 1100
        都为1,则为1
         A|B=0011 1101
        有1则为1
         A^B=0011 0001
        异或,相同为0,不同为1

		面试:
		2 * 8 的最快实现
		2 * 2 * 2 * 2
		左移3
		
			
         <<:左移   *2
         >>:右移   /2
         0000 0000    0
         0000 0001    1
         0000 0010    2
         0000 0100    4
         0000 1000    8
         0001 0000    16


         */
        System.out.println(2<<3);
        System.out.println(2>>3);
    }
}

修饰符

不分前后顺序

JavaDoc

javaDoc命令是用来生成自己API文档的

/**
 * @author 作者名
 * @version 版本号
 * @since 指明需要最早使用的jdk版本
 * @param 参数名
 * @return 返回值情况
 * @throws 异常抛出情况
 */

public class Demo5_JavaDoc {

}

命令行生成

找到相应文档的位置打开cmd

javadoc -encoding UTF-8 -charset UTF-8 文件名.java

posted @ 2024-07-14 17:34  SyzTak  阅读(9)  评论(0)    收藏  举报