[Java 02] 基础部分 2021.11.07

JAVA基础


JDK包括开发的小工具, java, javac等编译运行工具等

JRE runtime environment 提供各种api

JVM


环境变量说明:

JAVA_HOME: tomcat启动会找这个地址

path: windows下寻找exe运行文件的地址需要配置: jdk的bin, 以及jre的bin

classpath: 1.7以上不用配置


写一个简单的 .java文件之后:

javac a.java, 生成a.class;

java a : 运行编译之后的这个class即可


新建一个empty project, File -> New -> Module -> Java

在project structure里,选自己的SDK和language level(8)

工具栏菜单栏找不到,进 View -> Appearance -> 各种bar

idea工具栏不见了

1. 注释

单行注释,多行注释,文档注释

//单行注释

/*    开始
多行注释  
      结束    */

// javaDoc 文档注释:
/**		开始
  *(每行开始都有一个*号  文档内容
		结束 */

2. 标识符

关键字:系统定义的

标识符:类名,变量名,方法名

3. 数据类型

java是强类型语言,要求变量必须先定义后使用

1. 基本数据类型: primitive type 八大基本类型:

//整数 byte, short, int, long, 1个字节,2个字节,4个字节, 8个字节
//浮点数 float, double, 4个字节,8个字节
//字符类型 char 2个字节
//布尔类型 boolean 1个位
long num4 = 30L;//重点,加L表示区别
float num5 = 30.1F;//重点,加F表示区别,不加f则为doulbe类型(会报错,需要强制转换了属于是)
  1. 类型扩展:

二进制:0b 开头,八进制: 0 开头, 十六进制: 0x 开头

// 浮点数不要做比较,float 和double 都不要去做比较,都是约等于,结果位True,有个类BigDecimal
float f1 = 1019393839829389f;
float f2 = f1 + 1;
System.out.println(f1 == f2);
  1. 字符拓展

    所有的字符本质还是数字

    char c1 = 'a';
    System.out.println((int)c1); //打印97
    
  2. 转义字符

    //转义字符
    \t, \n //加了table, 换行等
    

2.引用类型: reference type 类,接口,数组

4. 类型转换

运算时,不同类型的数据先转换位同一类型,然后进行运算。

//low -------------------------high
//按照数据范围, 数据范围从大到小需要强制转换, 数据范围从小到大自动转换
byte, short, char->int->long->float->double
int i = 100;
byte b = (byte)i;//需要强制转换
double d = i;//自动转换
//数字中间可以加下划线方便查看数据大小
int i = 10_0000_0000; // 10个亿
long all = i * 20;//会溢出,返回值为负数,在运算时需要把i强制转换为long类型
long all = (long)i * 20;

类型转换的问题:溢出问题,精度问题

5. 变量,常量,作用域

类变量,实例变量,局部变量,

//类变量
static int num = 10;//在main中可直接调用,是和类绑定在一起的
//实例变量
String str = 'hello';

int num = 10;//使用要先new对象,然后调用
//局部变量 写在方法中的变量

常量:特殊的变量,constant在 initialize之后不可以改变

final String Family_name = 'wuhu';

命名规范:

类名: 大驼峰:首单词大写+驼峰原则

变量: 小驼峰:首单词小写+驼峰原则

6. 基本运算符

不同类型数据进行运算符运算,有比int高的,结果以高的数据类型为准,比int底的都是int类型。

byte a = 2;
short b = 10;
int c = 100;
long d = 12121212L;

a+b //结果为 int类型
b+c //结果为int类型
c+d //结果为long 类型
b = a++; //先给b,a再加加
b = ++a; //a先加加, 再给b

Math包,去查看包或者函数,Ctrl + B

与或非运算,短路问题

int dd = 5;
boolean ee = (dd<4)&&(dd++ < 10);
System.out.println(dd);
System.out.println(ee);
//因为第一部就不成立,所以dd++不会被执行,输出结果为dd依然是5

三元运算符

String type = x<60? '不及格':’及格‘;

7. JDoc文档

在类或者方法上面打/**, 自动生成,

可以写的内容有:

@author
@version 自己的版本号
@since jdk的版本
@param
@return
@throws 

Dos使用: javadoc -encoding UTF-8 -charset UTF-8 xxx.java, 之后打开index.html,就可以看到生成的文档。

IDEA中查看文档 在类/方法上,Ctrl + Q

posted @ 2021-11-07 18:08  Roy2048  阅读(61)  评论(2)    收藏  举报