Java基本语法
(自学理解,如有不当敬请指正)
一、标识符
定义: 对于各种变量、方法和类等要素命名时使用的字符序列。
使用规则:
1.标识符由字母,下划线,美元符和数字组成。
2.标识符应由字母,下划线,美元符开头。
3.标识符严格区分大小写,长度没有限制。
4.不能包含空格。
二、关键字
定义: 一些被赋予特定含义,拥有特殊用途的字符串叫做关键字,所有Java关键字都是小写英文字母。(若大写则不被视作关键字)
(一)用于控制访问相关四个:
public(公共的)
protected(受保护的,同一个包中的其他类及子类可以访问)
缺省
private(私有的,本类可以访问)
(二)类、接口、抽象类相关、实例化对象相关六个:
abstract(抽象的)
class(定义类)
interface(定义接口)
implements(实现)
extends(继承)
new(创新对象)
(三)程序控制相关十二个:
if(如果)、else(否则)
instanceof(判断一个对象是否是某个类的实例)
switch(开关)
case(switch语句的一个条件)
break(跳出循环/跳出switch语句块)
default(switch语句的默认分支,当所有的case都不满足条件时会执行)
for(for循环语句)、do(循环语句,循环体至少会被执行一次)
while(当.....时)continue(结束本次循环,继续下一次循环)
return(返回...,用于跳出方法)
(四)修饰方法,变量方法相关六个:
static(静态的)
final(最终的不可被改变的)
synchronized(线程同步的)
transient(修饰不要序列化的字段)
volatile(标记字段可能会被多个线程同时访问)
strictfp(严格的/精准的)
(五)异常处理相关五个:
try(捕获异常)
catch(处理异常)
finally(有无异常都会执行)
throw(抛出一个异常对象)
throws(声明一个方法可能抛出异常)
(六)包相关两个:
import(引入包)package(定义包)
(七)数据类型相关八个:
byte、short、int、long、float、double、char、boolean
(八)变量引用相关3个:
super(调用父类的方法/构造函数/成员变量)
this(表示调用当前实例的成员变量或方法/调用另一个重载的构造函数)
void(没有返回值)
三、变量
概念: Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。
注意:Java中每一个变量都属于特定的数据类型,在使用前必须申明变量类型。
(一)变量的分类
1.按声明位置划分
局部变量:在方法或者语句块内部定义的变量。
成员变量:在方法外部,类的内部定义的变量。
2.所属数据类型划分
基本数据类型变量
引用数据类型变量
(二)局部变量和成员变量
public class Test{
public int i;//成员变量
public void method(){
int j;//局部变量
}
}
四、基本数据类型及其转换
(一)基本数据类型
1、整数类型:byte,short,int,long
2、浮点类型:float、double
3、字符类型:char
4、布尔类型:boolean
(二)转换
1、boolean类型不可转换为其他的数据类型
2、整形,字符型,浮点型的数据在混合运算中相互转换要准守如下规则
(1)容量小的类型自动转换为容量大的数据类型:
byte,char,short > int > long > float > double
(byte,char,short不会相互转换,他们在计算式先转换成int类型)
(2)容量大的类型转换成容量晓得类型要加上强制转换符,可能会造成精度降低或者溢出
五、运算符分类
算术运算符:+ - / % ++ --;
关系运算符:> < = == !=
逻辑运算符:! & | ^ && ||
位运算符:& | ^ ~ >> <>>
赋值运算符:=
扩展赋值运算符:+= -= /= =
字符串连接运算符:+ 字符串连接运算符:+
六、语句
(一)条件语句
if //如果条件为true则执行
if...else //如果if条件为true执行if语句,否则执行else语句
if...else if //如果if条件为true执行if语句,否则执行else if语句
if...else if...else if...else //有一条执行就不会再判断后续
switch
swtich()变量类型只能是int、short、char、byte和enum类型。当进行case判断时,JVM会自动从上到小扫描,寻找匹配的case
(二)循环语句
for、while、do while
break 强制退出循环
Continue 语句 用于终止某次循环过程
七、数组
dataType [ ] arrayVar;
dataType arrayVar [ ];
使用:
dataType [ ] array = new dataType [arraySize] ;
1、 dataType [ ] array
声明了一个数组变量;
2 、使用new dataType[ arraySize]
创建了一个数组
八、方法
概念: 方法是语句的集合,可以实现一个功能,如println()方法可实现打印输出
(一)方法的定义规则:
1、命名规则:方法名一般以小写字母开头,后边的单词首字母大写,也可以用下划线链接,例如add_number
2、return后边跟的值的类型必须与返回值类型相同,除了void,因void无返回值
(二)解析方法
1、修饰符:是可选的,告诉编译器如何调用该方法,定义了该方法的访问类型。
2、返回值类型:方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字void。
3、方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
4、参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
5、方法体:包含具体的语句,定义该方法的功能如 int x=0; x=a+b;。
(三)方法的调用
方式一:有返回值的方法作为值来使用,例如:
int love=addNumber(519, 1);
方式二:返回值为void的方法,例如:
System.out.print("write by gsz");
(四)main方法
main方法是被JVM调用的,如带修饰符 public 和 static,返回 void 类型值,方法名字是 main,带一个 String[] 类型参数。String[] 表明参数是字符串数组。
public static void main(String[] args) {}
(五)方法的重载
如果调用max方法时传递的是int型参数,则 int型参数的max方法就会被调用;
如果传递的是float型参数,则float类型的max方法体会被调用,这叫做方法重载;
一个类的两个方法拥有相同的名字,但是有不同的参数列表。Java编译器根据方法签名判断哪个方法应该被调用。