java基础(语法)

java基础(语法)

java运行机制

解释型

编译型:把代码转成计算机可识别的中间代码

注释

单行注释 //

多行注释 /**/

文档注释 /** */

java标识符

关键字

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B2Gdkfc3-1603614276202)(E:\Typora\day01\截图\标识符.JPG)]

标识符注意点

  1. 所有标识符都应该以字母(大小写),美元字符($),或者下划线开始
  2. 首字符之后可以是字母(大小写),美元字符($),下划线或者数字的任意组合
  3. 不能使用关键字作为变量名或方法名
  4. 标识符是大小写敏感的

数据类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tGvvnBqe-1603614276204)(E:\Typora\day01\截图\数据类型.JPG)]

注意Boolean只占一位

定义变量时 long数据类型需要在后面加L

定义变量时 float数据类型需要在后面加F

附加:计算机中的单位

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

字节(byte):一字节对于8位,单位(B)


在定义变量时的进制:

二进制0b 八进制0 十六进制0x(都是开头)、


浮点数:浮点数具有有限、离散、含入误差、大约、接近但不等于的特点,所以最好完全不用浮点数进行比较


面试题:银行业务怎么表示?

使用BigDecimal 数学工具类


转义字符:

\t 制表符

\n 换行

等等

类型转换

运算时类型转换优先级(从低到高)

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

高到低需要强制类型转换,低到高可以自动转换

注意:

  1. 不能对布尔类型转换
  2. 不能把对象类型转换成不相干的类型
  3. 在把高容量转换到低容量时,强制转换
  4. 转换的时候可能存在内存溢出,或者精度问题

int i = 111;

byte b = i;

会报错

需要加强制转换byte b = (byte)i;


byte b = 111;

int i = b;

不会报错,会自动类型转换


注意:当计算时,如果没有long,其他类型运算都会变成int类型。例如:

short a = 10;

byte b = 8;

a+b = 18(int类型)

如果有float参与,会变成double

变量

定义变量:

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


变量作用域

局部变量:在方法体里面定义的变量,必须要赋值

实例变量:定义在类里面方法的外面,从属于对象,不一定要赋值(布尔值默认为false)

类变量:加了static关键字,从属于类,


常量:指的是初始化后不再改变值

定义:

final double PT = 3.14;

常量名一般使用大写


变量命名规范:

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

运算符

算数运算符

+加法,-减法,*乘法,/除法,%取余(模运算),++,–

赋值运算符

=

关系运算符

有>大于,<小于,>=大于等于,<=小于等于,==等于,!=不等于

逻辑运算符

&&与,||或,!非


短路运算:

​ 比如当与运算中第一个已经判断为假,则不计算后面的内容

位运算符

& 与, | 或, ^ 异或, ~取反 , >>右移 , <<左移 , >>>


面试题:2*8怎么运算最快

2<<3(2左移3位)

条件运算符

?:

例:x ? y : z

如果x==true,则结果为y,否则就为z

扩展赋值运算符

+=, -=, *=, /=

包机制

类似文件夹

命名规则:一般利用公司域名倒置作为包名。比如www.baidu.com

命名为com.baidu.www


如果要使用其他包,则要在类前面加import导入

javaDoc

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

参数信息:

  1. @author 作者名
  2. @version 版本号
  3. @since 指明需要最早使用的jdk版本
  4. @param 参数名
  5. @return 返回值情况
  6. @throws 异常抛出情况

扩展

字符串连接符

字符串连接符 +

在+两边又出现string类型时,+自动把两边都变为字符串类型


面试题

System.out.println(""+a+b);
System.out.println(a+b+"");

两者有什么不同?

第一行会输出1020

用的jdk版本
4. @param 参数名
5. @return 返回值情况
6. @throws 异常抛出情况

扩展

字符串连接符

字符串连接符 +

在+两边又出现string类型时,+自动把两边都变为字符串类型


面试题

System.out.println(""+a+b);
System.out.println(a+b+"");

两者有什么不同?

第一行会输出1020

第二行会输出30


听课笔记,上传方便自己自用,不喜勿喷(学习视频b站狂神说)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值