java基础语法
注释、标识符、关键字
注释
-
注释不会被执行,写给写代码的人看的
-
可以帮助我们理解
-
单行注释 //
-
多行注释/* */
-
文档注释 /** */
-
写代码要注释规范
标识符
-
所有的标识符都应该以字母(A~Z或者a~z),美元符($)、下划线(_)开始
-
首字符之后可以是字母、美元符、下划线或数字的任意字符组合
-
不能使用关键字作为变量名火方法名
-
标识符是大小写敏感的
-
合法标识符:age、$salary, _value,
-
非法标识符举例:123abc, -salary
-
可以使用中文命名,但是不建议,也不建议用拼音
数据类型*
强类型语言
要求变量的使用要严格符合规矩,所有的变量都必须先定义后才能使用
优点
安全性高
缺点
速度慢
弱类型语言
分类
-
浮点数具有有限,离散,舍入误差,接近但不等于等特点
-
最好完全避免使用浮点数进行比较
-
银行业务表示使用BigDecimal
字符拓展
-
所有的字符本质就是数字
-
二进制 0b开头
-
八进制0
-
十六进制0x
转义字符
类型转换
-
java是强类型语言,所以要进行一些运算的时候,需要用到类型转换
-
类型转换从低到高:byte、char、short-->int-->long-->float-->double(小数的优先级高于整数)
-
在运算中,不同类型的转化为同一类型,然后进行转换
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干的类型
-
在把高容量转换到低容量时,强制转换
-
转换的时候可能存在内存溢出,或者精度问题
强制类型转换
-
格式:(类型)变量名 高-->低
自动类型转换
-
低-->高
变量、常量*
-
Java是强类型语言,每个变量都必须要声明其类型
-
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
注意事项
-
每个变量都有类型,类型可以是基本类型,也可以是引用类型
-
变量名必须时合法的标识符
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
变量作用域
类变量
-
也叫静态变量,静态属性,是该类所有对象共享的变量,任何一个该类的对象去访问他时,取到的值都是相同的值,同样任何一个该类对象去修改他是,修改的也是同一个变量
实例变量
-
从属于变量,如果不自行初始化,这个类型的默认值0
-
布尔值:默认值是false
-
除了基本类型,其余的默认值都是null
局部变量
-
必须声明和初始化值
-
只在定义的区间内有效
-
变量命名规范
-
所有比那辆,方法,类名:见名知意
-
类成员变量:首字母小写和驼峰原则:monthSalary
-
局部变量:首字母小写和驼峰原则
-
常量大写字母和下划线:MAX_VALUE
-
类名:首字母大学和驼峰原则
-
方法名:首字母小写和驼峰原则:runRun()
常量
-
初始化后不能在改变值不会变动的值
-
一种特殊的变量,它的值贝设定后,在程序运行过程中不允许被改变
-
常量名一般使用大写字符
-
修饰符不存在先后顺序
-
final是常量的关键字
运算符
实例
-
b = a++,执行这行代码之后,先把a=3赋值给了b,所以b输出3,但是a的值变成了4
-
c=++a,执行这行代码之前,a先自增变成5,然后再把值赋给c,所以a、c都输出为5
逻辑运算
-
逻辑与运算:两个变量都为真,结果才为真
-
逻辑或运算:两个变量有一个为真,则结果才为真
-
逻辑非运算:如果是真,则变为假,如果是假,则变为真
位运算
-
向左移向右移移动的是数字在二进制中的位置
-
左移一位就相当于乘以2
-
右移一位就相当于除以2
-
32<<1=32*2=64
-
32<<2=32*2^2=128
-
32>>1=32/2=16
连接符
package niu; public class Demo1 { public static void main(String[] args) { int a = 10; int b = 20; //字符串连接符 + ,String System.out.println(""+a+b);//1020,+将两个字符串拼接起来 System.out.println(a+b+"");//30,先进行运算 } }
三元运算符
package jjj; //三元运算符 public class Demo2 { public static void main(String[] args) { //x ? y : z //如果x==true,则结果为y,否则结果为z int score = 20; String type = score <60 ? "不及格":"及格";//掌握 System.out.println(type); } }
包机制、JavaDoc *
包机制
-
java提供的包机制,用于更好的组织语言,区别类名的命名空间
-
包语言的语法格式为
package pkg1[. pkg2[. pkg3…]];
-
一般利用公司域名倒置作为包名: com.woaixuexi.www
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用”import“语句可完成此功能
import pkg1[. pkg2…].(name|*);
-
包名要规范
-
推荐看阿里巴巴开发手册
JavaDoc
-
用来生成自己的API 文档的
-
参数信息
-
@author 作者名
-
@version 版本号
-
jdk7新特性:数字之间可以用下划线分割,但不影响输出,方便辨认
eclipse :复制当前行到上、下一行Ctrl+alt+上下箭头
idea中时ctrl+d复制到下一行