Java基础语法
1.注释
//单行注释
/*
多行注释
*/
/**
*@文档注释
*/
//有趣的注释
/*
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!` `4!!!!!!!!!!~4!!!!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! <~: ~!!!~ .. 4!!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ~~~~~~~ ' ud$$$$$ !!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ~~~~~~~~~: ?$$$$$$$$$ !!!!!!!!!!!!!!
* !!!!!!!!!!!` ``~!!!!!!!!!!!!!! ~~~~~ "*$$$$$k `!!!!!!!!!!!!!
* !!!!!!!!!! $$$$$bu. '~!~` . '~~~~ :~~~~ `4!!!!!!!!!!!
* !!!!!!!!! $$$$$$$$$$$c .zW$$$$$E ~~~~ ~~~~~~~~ ~~~~~: '!!!!!!!!!!
* !!!!!!!!! d$$$$$$$$$$$$$$$$$$$$$$E ~~~~~ '~~~~~~~~ ~~~~~ !!!!!!!!!!
* !!!!!!!!> 9$$$$$$$$$$$$$$$$$$$$$$$ '~~~~~~~ '~~~~~~~~ ~~~~ !!!!!!!!!!
* !!!!!!!!> $$$$$$$$$$$$$$$$$$$$$$$$b ~~~ '~~~~~~~ '~~~ '!!!!!!!!!!
* !!!!!!!!> $$$$$$$$$$$$$$$$$$$$$$$$$$$cuuue$$N. ~ ~~~ !!!!!!!!!!!
* !!!!!!!!! **$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$Ne ~~~~~~~~ `!!!!!!!!!!!
* !!!!!!!!! J$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$N ~~~~~ zL '!!!!!!!!!!
* !!!!!!!! d$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$c z$$$c `!!!!!!!!!
* !!!!!!!> <$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$> 4!!!!!!!!
* !!!!!!! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ !!!!!!!!
* !!!!!!! <$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*" ....:!!
* !!!!!!~ 9$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$e@$N '!!!!!!!
* !!!!!! 9$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ !!!!!!!
* !!!!!! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$""$$$$$$$$$$$~ ~~4!!!!
* !!!!!! 9$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$Lue :::!!!!
* !!!!!!> 9$$$$$$$$$$$$" '$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$ !!!!!!!
* !!!!!!! '$$*$$$$$$$$E '$$$$$$$$$$$$$$$$$$$$$$$$$$$u.@$$$$$$$$$E '!!!!!!!
* !!!!~` .eeW$$$$$$$$ :$$$$$$$$$$$$$***$$$$$$$$$$$$$$$$$$$$u. `~!!!!!
* !!> .:!h '$$$$$$$$$$$$ed$$$$$$$$$$$$Fz$$b $$$$$$$$$$$$$$$$$$$$$F '!h. !!!
* !!!!!!!!L '$**$$$$$$$$$$$$$$$$$$$$$$ *$$$ $$$$$$$$$$$$$$$$$$$$F !!!!!!!!!
* !!!!!!!!! d$$$$$$$$$$$$$$$$$$$$$$$$buud$$$$$$$$$$$$$$$$$$$$" !!!!!!!!!!
* !!!!!!! .<! #$$*"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$* :!!!!!!!!!!!
* !!!!!!!!!!!!: d$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$# :!!!!!!!!!!!!!
* !!!!!!!!!!!~ : '#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*" !!!!!!!!!!!!!!!
* !!!!!!!!!! !!!!!: ^"**$$$$$$$$$$$$$$$$$$$$**#" .:<!!!!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!:... .::!!!!!!!!!!!!!!!!!!!!!!!!
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*
*/
2.标识符
标识符(identifier),是指类名(包括接口、枚举、抽象类)、方法名、变量、常量名、包名等可以自定义的字符组合。
要遵循如下规则:
- 只能以字母、下划线、$符号开头,不能以数字开头;
- 由字母, 下划线, 数字, $符号组成;
- 标识符长度没有限;
- 区分大小写
- 不能用关键字作为变量名或方法名和类名
3.数据类型
1.强类型语言
java是一种强类型语言,要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
2.弱类型语言
Java数据类型分类:
1.基本类型(primitive type)
1. 数值类型
整数类型:
-
byte(1字节 范围:-128-127)
-
short(2字节 范围:-32768-32767)
-
int(4字节 范围:-2147483648-2147483647)
-
long(8字节 -9223372036854775808-9223372036854775807)
long num=40L浮点类型:
-
float(4字节)
float num=40.1F -
double(8字节)
-
字符类型:
1. char(2字节)
字符串,string不是关键字,是一个类
2. boolean类型
true和false(1位)
2.引用类型(reference type)
-
类
-
接口
-
数组
面试题:
- 银行业务怎么表示?
float s=0.1f;
double x=1.0/10;
System.out.println(s==x);
输出是false
float 有限 离散 舍入误差 大约 接近但不等于
最好完全避免使用浮点数表示
使用BigDecimal 数学工具类
4.类型转换
低——————————————————————高
byte,short,char->int->long->float->double
1.强制类型转换
(类型)变量名(高到低)
2.自动类型转换
(低到高)
3.注意事项
1、不能对布尔值进行转换
2、不能把对象类型转换为不相干的类型
3、再把高容量转换到低容量的时候,强制转换
4、转换的时候可能存在内存溢出,或者精度问题
5.变量
- 变量是什么:就是可以变化的量。
- Java是一种强类型语言,每个变量都必须声明其类型单元。
- java变量是程序中最基本的存储,其要素包括变量名,变量类型和作用域。
变量作用域
-
类变量
定义在类中的变量(静态变量),从属于类,需要加关键字static
方法中可以直接调用
-
实例变量
定义在类中的变量,从属于对象。
在方法中要调用先new一个类在调用
-
局部变量
写在方法中,必须声明和初始化值
变量的命名规范
所有的变量、方法、类名:见名知意。
类成员变量:首字母小写和驼峰原则。 monthSalary 除了第一个单词以外,后面单词首字母大写
局部变量:首字母小写和驼峰原则。
常量:大写字母和下划线。
类名:首字母大写和驼峰原则。
方法名:首字母小写和驼峰原则。
6.常量
常量:初始化之后不能在改变值!不会变动的值。
所谓常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名 = 值;
常量名一般为大写字母。
final double PI=3.14
7.基本运算符
1.算术运算符
+, - , * , / , % , ++ , --
a++(先赋值,再自增)
++a(先自增,再赋值)
2.赋值运算符
=
3.关系运算符
> , < , >= , <= , == , !=
4.逻辑运算符
&& , || , !
5.位运算符
了解:
& , | , ^ , ~ , >> , << ,>>>
A = 0011 1100
B = 0000 1101
A&B=0000 1100(都为1才是1)
A|B =0011 1101(1个或2个1则为1)
A^B =0011 0001(相同为0,不同为1)
面试题:
2*8怎么运算最快
- <<(左移) =*2
- .>>(右移) =/2
System.out.println(2<<3);
=16
字符串连接
int a=10;
int b=20;
System.out.println(""+a+b);//结果为1020
System.out.println(a+b+"");//结果为30
6.条件运算符
?: //x?y:z 如果x为真,则结果为y,否则为z
7.扩展赋值运算符
+= , -= , *= , /=
8.Math类
幂运算
double a=Math.pow(3,2)
=9.0
8.运算符优先级
- 右结合性,就是在表达式中最右边的操作最先执行,然后从右到左依次执行
- 左结合性的操作符(如位操作符“&”和“|”)则是从左至右依次执行
一般而言,单目运算符优先级较高(例:!,++,–),赋值运算符优先级较低。算术运算符优先级较高,关系和逻辑运算符优先级较低。多数运算符具有左结合性,单目运算符、三目运算符、赋值运算符具有右结合性。
9.包机制
用于区别类名的命名空间(本质为文件夹)
package pkg1[.pkg2[.pkg3…]]
一般利用公司域名倒置作为包名:com.baidu.www
导包:
import package1[.package2...].(classname|*);
.* 导入此包所有类
阿里巴巴开发手册
10.JavaDoc
生成自己API文档的
(加在类上面的是类注释,加在方法上面的是方法注释)
参数信息:
@author 作者名
@version 版本号
@since 指明需要最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
package
/**
* @author
* @version 1.0
* @since 1.8
*/
使用命令行来生成的javadoc文档
右击Doc类,点击Open in->Explore,打开文件所在位置,并通过快捷方式cmd +文档所在位置,打开命令行窗口,输入代码javadoc -encoding UTF-8 -charset UTF-8 Doc.java,这里可以观察到该文件夹里生成了许多新的文件,直接点击index文件(表示主页)即可查看所生成的API和帮助文档
使用IDEA生产JavaDoc文档
这里是参考网上的一篇博客,点击跳转
本文详细介绍了Java编程的基础概念,包括单行、多行注释的使用,标识符的命名规则,以及数据类型的分类与操作,如基本类型、强弱类型的区别,以及变量、常量和运算符的基础知识。
7616

被折叠的 条评论
为什么被折叠?



