Java基础语法
目录
- 注释、标识符、关键字
- 数据类型
- 类型转换
- 变量、常量
- 运算符
- 包机制、JavaDoc
1.1注释、标识符、关键字
注释
-
注释并不会被执行,是给我们写代码的人看的
-
书写注释是一个非常好的习惯
-
平时写代码一定要注意规范。
-
Java中的注释有三种
单行注释//
多行注释/* */
文档注释 JavaDoc文档注释/** */
标识符
- 关键字
abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protected public return strictfp short static super switch synchronized this throw throws transient try void volatile while
- Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
标识符注意点
-
所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
-
首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
-
不能使用关键字作为变量名或方法名
-
标识符是大小写敏感的
-
合法标识符举例:age、$salary、_ value、__ 1_value
-
非法标识符举例:123abc、-salary、#abc
-
**可以使用中文命名标识符,但是一般不建议这么做,也不建议使用拼音,很low
1.2数据类型
-
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
弱类型语言
-
Java的数据类型分为两大类
-
基本类型(primitive type)
- 数值类型 ①整数类型 byte占1个字节范围:-128~127
short占2个字节范围:-32768-323767
int占4个字节范围:-2147483648~2147483647
long占8个字节范围:-9223372036854775808-9223372036854775807
在修饰的数字后面加上L long numl =899399393L
②浮点类型 float占4个字节
在表示中需要在数字后面加上F float numf =1.0F
double占8个字节
③字符类型char占两个字节
char name=‘王’(‘’中只能有一个字)
- boolean类型:占1位其值只有true和false两个
-
引用类型(reference type)
-
类 (string字符串是一个类,不是关键字)
-
接口
-
数组
-
什么是字节
- 位(bit):是计算机内部数据存储的最小单位,11001100是一个八位二进制数。
- 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示,
- 1B(byte,字节)=8bit(位)
- 字符:是指计算机中使用的字母、数字、字和符号
- 1bit表示1位
- 1Byte表示一个字节1B=8b
- 1024B=1KB
- 1024KB=1MB
- 1024MB=1GB
数据类型扩展及面试题详解
整数拓展:进制 二进制0b 十进制 八进制0 十六机制0X
浮点数拓展:在数据的比较中,不同数据类型(即使数值大小相同)通过判断时,会是false,相同数据类型(即使数值大小不同)通过判断时,会是true。
浮点数表示有限、离散、舍入误差、大约、接近但不限于
在银行业务中,用数学工具BigDecimal来表示数据
最好完全使用浮点数进行比较
所有的字符本质上是数字,unicode编码U0000—UFFFF
转义字符\t制表符 \n换行符
String sa =new String("hello world");
String sb =new String("hello world");
System.out.println(sa==sb);
String sc="hello world";
String sd="hello world";
System.out.println(sc==sd);
上面的会报false,下面的报true
1.3数据类型转换
-
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
低--------------------------------------------------------------------------->高
byte<short <char<int<long<float<double
运算中,不同类型的数据先转化为同一类型,在进行运算。
强制类型转换 (类型)变量名 高–低
自动类型转换 低–高
1.4变量、常量、作用域
变量
-
变量是什么:就是可以变化的量!
-
Java是一种强类型语言,每个变量都必须声明其类型。
-
Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。
type varName [=value] [{,varName[=value]}];
//数据类型 变量名 =值;可以使用逗号隔开来声明多个同类型变量。
-
注意事项
每个变量都有类型,类型可以是基本类型,也可以是引用类型。
-
变量名必须是合法的标识符
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
类变量
实例变量
局部变量
-
类变量:static
只有定义static的类变量,才可以在方法体中直接引用
实例变量:从属于对象;
局部变量在方法体之中,必须声明和初始化值
注意:① 布尔值:默认是false ②除了基本数据类型,其余的默认值都是null;
常量
常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
所谓常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名=值;
final double PI=3.14
常量名一般使用大写字符。
变量的命名规则
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man.GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
1.5运算符
- Java语言支持如下运算符
算术运算符:+,-,*,/,%,++,–
赋值运算符=
关系运算符:<,>,>=,<=,==,!=,instanceof
逻辑运算符:&&,||,!
位运算符:&,|,^,~,>>,<<,>>>
条件运算符:?:
扩展赋值运算符:+=,-=,*=
1.6自增自减运算符
int b =a++; b的值为a加一前的值;此后输出a的值为a加一后的值
int c =++a; c的值为a加一后的值;此后输出a的值为a加一后的值
1.7逻辑运算符、位运算符
&&与
||或
!非(取反)
A=0011 1100
B=0000 1101
A&B= 0000 1100
A|B =0011 1101
A^B=0011 0001
~B=1111 0010
<< *2 >> /2
a+=b; //a=a+b
a-=b; //a=a-b
int a=10;
int b=20;
System.out.println(""+a+b);//输出1020
System.out.println(a+b+"");//输出30
1.8三元运算符
int score =50;
String type =score <60?"不及格":”及格“;
System.out.println(type)
1.9包机制
-
为了更好地组织类,Java提供了包机制,用于区分类名的命名空间。
-
包语句的语法格式为:
package pkg1[.pkg2[. pkg3...]];
-
一般利用公司域名倒置作为包名;
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用”import“语句可完成此功能。
-
import package1[.package2...].(classmate|*);
package放在import导包的上面
1.10JavaDoc
-
javadoc命令是用来生成自己API文档的
-
参数信息
@author作者名
@version版本号
@since指明需要最早使用的jdk版本号
@param参数名
@return返回值情况
@throws异常抛出情况
格式:
/**
*@
*@
*@
*/
通过DOS窗口在doc文件目录下,输入javadoc -encoding UTF-8 -charset UTF-8 Doc.java 生成index等索引文件