一,java语法基本规则
1.区分大小写 2,只认分号,不认换行 3,所有分隔符号都是英文标点
4,所有的java程序由public static void main(String[] args)方法开始执行
二,java注释
// #单行注释 /* */ #多行注释 /** */ #文档注释,用来生成文档
三,标志符命名规则
标示符以字母、下划线”_”、美元符”$”开头
java标示符大小写敏感,长度无限制
package名字: 使用小写字母
.java文件的文件名(类名): 约定俗成的规则:
首字母大写,多个单词时,每个单词首字母大写
变量名:首字母小写,当有多个单词时,从第2个单词开始首字母小写(驼峰式命名)
方法名: 命名规则同 变量名命名规则
四,java修饰符
1.访问控制修饰符 default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。 private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类和接口(外部类) public : 对所有类可见。使用对象:类、接口、变量、方法 protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)。
2,非访问控制修饰符
static 修饰符,用来修饰类方法和类变量。
final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。
abstract 修饰符,用来创建抽象类和抽象方法。
synchronized 和 volatile 修饰符,主要用于线程的编程
五,运算符
1,算术运算符 + 加法 - 相加运算符两侧的值 A+B 等于 30 - 减法 - 左操作数减去右操作数 A–B 等于 -10 * 乘法 - 相乘操作符两侧的值 A*B等于200 / 除法 - 左操作数除以右操作数 B/A等于2 % 取余 - 左操作数除以右操作数的余数 B%A等于0 ++ 自增: 操作数的值增加1 B++ 或 ++B 等于 21-- 自减: 操作数的值减少1 B-- 或 --B 等于 192,关系运算符 == 检查如果两个操作数的值是否相等,如果相等则条件为真。 (A==B)为假。 != 检查如果两个操作数的值是否相等,如果值不相等则条件为真。 (A!=B) 为真。 > 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 (A>B)为假。 < 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 (A<B)为真。 >= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 (A>=B)为假。 <= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 (A<=B)为真。 3,位运算符 & 如果相对应位都是1,则结果为1,否则为0 (A&B)得到12,即0000 1100 | 如果相对应位都是 0,则结果为 0,否则为 1 (A|B)得到61,即 0011 1101 ^ 如果相对应位值相同,则结果为0,否则为1 (A^B)得到49,即 0011 0001 ~ 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。 (~A)得到-61,即1100 0011 << 按位左移运算符。左操作数按位左移右操作数指定的位数。 A << 2得到240,即 1111 0000 >> 按位右移运算符。左操作数按位右移右操作数指定的位数。 A >> 2得到15即 1111 >>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。 A>>>2得到15即0000 1111 4,逻辑运算符(短路运算符) && 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。 (A&&B)为假。 || 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。 (A||B)为真。 ! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。 !(A&&B)为真。 5,赋值运算符 = 简单的赋值运算符,将右操作数的值赋给左侧操作数 C = A + B将把A + B得到的值赋给C += 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 C += A等价于C = C + A -= 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 C -= A等价于C = C - A *= 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 C * = A等价于C = C * A /= 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 C / = A,C 与 A 同类型时等价于 C = C / A %= 取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数 C%= A等价于C = C%A <<= 左移位赋值运算符 C << = 2等价于C = C << 2 >>= 右移位赋值运算符 C >> = 2等价于C = C >> 2 &= 按位与赋值运算符 C&= 2等价于C = C&2 ^= 按位异或赋值操作符 C ^ = 2等价于C = C ^ 2 |= 按位或赋值操作符 C | = 2等价于C = C | 2 6, instanceof运算符 语法如下:( Object reference variable ) instanceof (class/interface type) 如果运算符左侧变量所指的对象,是操作符右侧类或接口(class/interface)的一个对象,那么结果为真 如果被比较的对象兼容于右侧类型,该运算符仍然返回true 示例: String name = "James"; boolean result = name instanceof String; // 由于 name 是 String 类型,所以返回真
六,java运算符优先级
后缀 () [] . (点操作符) 左到右 一元 + + - !〜 从右到左 乘性 * /% 左到右 加性 + - 左到右 移位 >> >>> << 左到右 关系 >> = << = 左到右 相等 == != 左到右 按位与 & 左到右 按位异或 ^ 左到右 按位或 | 左到右 逻辑与 && 左到右 逻辑或 | | 左到右 条件 ?: 从右到左 赋值 = + = - = * = / =%= >> = << =&= ^ = | = 从右到左 逗号 , 左到右