JAVA基础笔记——基础语法、包机制、JavaDoc


1 注释、标识符、关键字

1.1 注释

  • 养成写注释的习惯
  • 注释不执行
  • 单行注释 line comment://注释
  • 块注释 block comment:/注释/
  • 文档注释 javadoc:/**开头,*/结尾,可以加参数

1.2 标识符

  • 以大小写字母、美元符号($)或者下划线(_)开头
  • 大小写敏感
  • 避开关键字
    tips:标识符用规范的英文单词含义

2 数据类型

java是强类型语言,变量先定义后使用,安全性高

在这里插入图片描述

2.1 基本类型

//整数
int num1=10;
byte num2=20;
short num3=30;
long num4=30L//小数
float num5=50.32F;
double num6=3.1415926;
//字符
char name='w';
//布尔值
boolean flag=true;

tips:

  • long类型和float类型在数字后有首字母大写后缀。
  • char类型只存储一个字符,用单引号
  • String作为字符串是类,不是关键字,String name=“www”;

2.2 引用类型

除了常用八大基本类型以外,主要包括类、接口和数组。

2.3 整数进制

进制前缀
二进制BIN0b
十进制DEC
八进制0
十六进制HEX0x
int i=10;//十进制
int i8=010;//八进制0
int i16=0x10;//十六进制0x

输出结果为:10;8;16;

2.4 浮点数精度

float f=0.1f;
double d=1.0/10;
System.out.println(f==d);//false

float d1=23123123123123f;
float d2=d1+1;
System.out.println(d1==d2);//true

tips :

  1. float类型是有限离散的,存在舍入误差
  2. 不要完全使用float类型进行数额比较,特别是在对数额精确度要求高的系统,比如银行业务
  3. 使用BigDecimal数学工具类,更适用于银行业务

2.5 字符编码

char c1='a';
System.out.println((int)c1);//97

char c2='/u0061';
System.out.println(c2);//a

tips:

  1. 字符a的ascll码是97(DEC),其中DEC:0=48 A=65 a=97
  2. /u用于转换为unicode表,后跟字符的十六进制编码,其中HEX:0=30 A=41 a=61

2.6 转义字符

转义字符意义
\t制表符,相当于tab键
\n换行符,相当于Enter键

3 类型转换

3.1 数据类型优先级

从低到高:byte\short\char->int->long->float->double
tips:
当转换存在内存溢出时,数值将存在问题
examples:byte在-128~127,当给byte类型变量赋值128时,输出改变量的结果为-128。

3.2 强制转换和自动转换

类型应用方法
强制转换从高到低(类型)变量名
自动转换从低到高自动

tips:

  1. 不能对布尔类型进行转换
  2. 转换存在内存溢出或精度丢失的问题。
  3. JDK7,数字之间可用下划线分割,且不会影响。example:iint i=1_000_000_000;

3.3 内存溢出问题

int money=10_0000_0000;
int years=20;
int total=money*years;
//total输出结果为-1474826480,说明该乘法结果已经溢出
//错误的溢出处理方法
long total2=money*years;//右式默认int类型,已经在右式计算结果上溢出,溢出结果赋值给long类型不能解决溢出
//正确的溢出处理方法
long total3=money*((long)years);//将右式结果默认为long类型

4 变量、作用域、常量

4.1 变量

4.1.1 变量定义

tips:

  1. java是强类型语言,要求声明变量类型。
  2. 变量可以为基本类型或引用类型。
  3. 变量名必须是合法标识符。
  4. 不建议在一行中定义多个变量,会降低可读性,example: int a,b,c;
type varName [=value];

4.1.2 变量命名

tips:

  1. 英文含义
  2. 类成员变量、局部变量、方法名:首字母小写和驼峰原则,比如:stuName;
  3. 常量:大写字母和下划线,比如:MAX_VALUE;
  4. 类名:首字母大写和驼峰原则,比如:StuList;

4.2 作用域

4.2.1 类变量

tips:

  1. 关键词“ static ”
  2. 从属于类对象,与类同生同消。

4.2.2 实例变量

tips:

  1. 在方法的外面,在类的里面,从属于类对象
  2. 不要求一定初始化,未初始化的数值输出该类型的默认值,除基本类型,其余默认值为null
  3. 需要通过类调用
    example:
    定义实例变量M_age和M_name,无需初始化实例变量的数值,通过Main类的变量Test_01调用。
    在这里插入图片描述

4.2.3 局部变量

tips:

  1. 定义在方法内,只在方法内有用。
  2. 必须声明和初始化数值。

4.3 常量

tips:

  1. 初始化后不能改值
  2. 语法格式
final type VarName=value;

3.常量名一般用大写,比如:PI

4.修饰符不区分先后顺序,比如:public、static、final,即final static double Var与static final double Var一致。


5 运算符

5.1 基本运算符

在这里插入图片描述
tips:

  1. instanceof 是面向对象的运算符
  2. 除法运算要注意浮点值保存的问题,可以对式子强制转换类型。
  3. 运算结果,如果参与运算的变量存在long类型(double类型),则式子结果为long(double类型),否则为int

5.2 自增自减运算符

tips:
1、+±-在变量后面,先赋值后+±-;
2、+±-在变量前面,先+±-后赋值;

5.3 幂运算

tips:

  1. 使用工具类,调用Math类中的pow(底,幂);
  2. example:
    2^3=8;
double pow=Math.pow(2,3);

5.4 逻辑运算符

运算符效果
两真为真
两假为假
取反

tips:

  1. 短路运算:当与运算的左式为假,则式子一定为假,右式不再运算;当或运算的左式为真,则式子一定为真,右式不再运算
    example1:
    a=5,与运算左式为假,则右式中的a++不会执行,a的数值最终还是5
    在这里插入图片描述
    example2:
    a=5,或运算左式为真,则右式中的a++不会执行,a的数值最终还是5
    在这里插入图片描述

5.5 位运算

运算符效果
全1为1
有1为1
非~取反
异或A^B相同为0,不同为1
左移<<乘以2
右移>>除以2
example1:
A=0101;	B=1001;
A&&B=0001;
A||B=1101;
~A=1010;
A^B=1100;

example2:
3*8=3*(2^3)=24,可以直接对3做三次(因为8是2^3)左移,在硬件上比执行乘法要来得更快(见汇编)。

5.6 三元运算符

tips:

  1. a= x?y:z
  2. 如果x==true,则a=x,否则a=z
    example:
    String type=score<60?"不及格“:”及格“;
    

5.7 字符串连接符

tips:

  1. 用 + 连接;
  2. 只要输出的式子中使用了字符串连接符+,当有String类型在加法运算的前面,则其他类型转换为String类型拼接输出;如果在加法运算的后面,则前面正常执行加法运算。
    example:
    在这里插入图片描述

6 包机制

tips:

  1. 本质上是文件夹,为了更好的组织类,用于区别类名的命名空间。
  2. 语法格式:
package pkg1[. pkg2[. pkg3…]];
  1. 一般利用公司域名倒置作为包名
    example:
    百度:www.baidu.com
    百度百科:www.baike.baidu.com
    百度文库:www.wenku.baidu.com
    则,在com包下建立baidu包,在baidu包内建立wenku包、baike包和www包。
    在这里插入图片描述
    则,在wenku包中的.java文件最上面会出现以下路径代码:
	package com.baidu.wenku;
  1. ctrl+鼠标右键可以转入对应包
  2. 导入包的语法代码,必须在包路径代码的下面
package 包地址;
import 导入内容地址/Java自带;
  1. 导入自写的包时,要保证当前.java文件中类的命名与导入包的类名不一致
  2. 若需要导入某包下所有文件,则使用包名.*
	package com.baidu.wenku.*;

7 JavaDoc文档注释

tips:

  1. javadoc命令是用来生成API文档的
  2. /**回车,自动生成方法中需要注释的内容
  3. 参数信息:
参数含义
@author作者名
@version版本号
@since指明最早使用的jdk版本
@param参数名
@return返回值情况
@throws异常抛出情况

example:
在这里插入图片描述
4.命令窗口生成javaDoc:
cmd进入当前包,执行命令

javadoc -encoding UTF-8 -charset UTF-8 文件名.java
  1. 在idea中生成javaDoc:
    在idea中打开工具栏(Tools),选择Generate JavaDoc…
    在这里插入图片描述
  2. 生成index.html
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值