Java中的常用关键字有:(搜集到的不一定全)
public protected private static final this class extends abstract super
interface implements void if else for while do true false
break switch case default continue byte char int short long
float double boolean instanceof catch try fianlly new import null
return enum goto package synchronized throws throw assert native volatile
transient const
下面是对一些关键字的简单介绍 :
访问控制符:(public protected private)
public(公有的):主要是用于修饰类、方法、属性、常量。
修饰类:表示这个类是公有的,所有的类都可以访问,是公开性最高的一个关键字;
public限定的类在一个文件中只能有一个,并且类名必须与文件名相同;
修饰方法:表示这个方法是公有的,可以被其他的类通过该类的对象进行访问(如果子类是public继承了父类,那么方法
重写时访问控制不可以小于public)
修饰属性:表示这个属性是公有的,其他的类可以通过该类的对象进行访问;而且可以直接通过 对象.属性 的方式来访问
对象的属性,但是根据对象的封装原则,属性不应由外部直接访问,因此一般把属性定义为private;
在接口interface中属性前不加public,也默认为public,在抽象类 abstract class中默认的也是public;
修饰常量:表示常量是公有的,直接通过类名或者接口名就可以直接访问
protected(受保护的):主要是用于修饰类、方法、属性。
修饰类:表示这个类是受保护的,只有当前包下的类才可以访问
修饰方法:表示这个方法是受保护的,只有同一个包下的类才可以通过对象进行访问,子类可以继承
修饰属性:表示这个属性是受保护的,只有同一个包下的类才可以通过对象进行访问
private(私有的):主要是用于修饰类、方法、属性。
修饰类: 表示这个类是私有的,所有的类都不可以进行访问
修饰方法:表示这个方法是私有的,所有的类的都不可以进行访问,只有类内部的对象可以访问
修饰属性:表示这个属性是私有的,所有的类的都不可以进行访问,根据封装原则,属性一般定义为private
private在构造器前时,就是我们不希望别人创建该类的对象;
只要是用private修饰的类、属性或者方法,那么就只有该类自己可以使用。
static(静态的):主要是用来修饰方法和常量 以及内部类
用static定义的方法:表示该方法不需要创建对象就可以直接用 类名.静态方法名 调用,如果是同一类
中调用可以不需要些类名。
用static定义的属性:表示该方法不需要创建对象,直接通过类名调用就好;
如果类的某一个对象的static属性被改变后,这个类所有对象的static属性都会被改变;
static属性可以在任何方法中调用,但在static方法中,只能直接调用static属性;
非static属性,就必须创建对象调用。
final:用来修饰常量、方法和类。
使用final定义的常量值,是不可以被改变的,如果改变值,则会引发语法异常。
使用final定义的方法,表示该方法是不可以被子类重写的,可以被继承和调用。
使用final定义的类,表示该类不能被子类继承。String就是一个用final定义的类
使用final定义的变量,也不可以被改变的
super(表示父类的):this(表示当前类的)。
使用super.方法名();会调用父类的方法 如:super.paint();
super关键在在构造函数中使用的时候,会根据你在圆括号中传入的参数来决定调用哪一个构造函数
super(参数列表);并且该条语句必须放在子类构造函数的第一行
this(表示当前类的):
(1).this关键字用来区分属性和参数,如:
public void setName(String name) {
this.name = name; //加上this的为属性,不加this的为参数
}
(2).this关键字用来指代当前对象,如:
Student stu1 = new Student();
Student stu2 = new Student();
stu1.setName(); //this指代stu1
stu2.setName(); //this指代stu2
(3).this关键字其实就是现实中的“我”
(4).this关键字可以在构造器中调用另一个构造器
如:在类name中:
public name(){
this("张三");//调用了自己的构造器
}
public name(String name){
super(name);//表示调用父类的带参数构造函数
}
instanceof:用来判断该对象是否是由该类创建的,if(对象 instanceof 类名)。
异常处理(throws throw catch try fianlly)
throw
允许用户抛出一个exception对象或者任何实现throwable的对象
throws
用在方法的声明中来说明哪些异常这个方法是不处理的,而是提交到程序的更高一层。
catch
用来声明当try语句块中发生运行时错误或非运行时异常时运行的一个块。
finally
用来执行一段代码不管在前面定义的try语句中是否有异常或运行时错误发生。
try
用来定义一个可能抛出异常语句块。如果一个异常被抛出,一个可选的catch语句块会处理try语句块中抛出的异常。同时,一个finally语句块会被执行,无论一个异常是否被抛出。
package:用来定义包的关键字
一个包可以由多级组成,在文件系统中,每一级表示一个文件夹,多级之间用.隔开
一般根据用途或其他规则,将一组有联系的类放在同一个包下
class 定义类的关键字
extends 普通类和抽象类继承时所用的关键字
abstract
abstract class是定义抽象类的,抽象类是不能被实例化的,但是可以被其它类继承。
一个抽象类可以使用抽象方法,抽象方法不需要实现,但是需要在子类中被实现
interface 定义接口的关键字,接口中只能有方法不能有实现,子类中必须给出接口中所有方法的实现
implements 继承接口的关键字
控制语句:(选择、循环)
if ... else ... 选择语句
if可以单独用,也可以与else配对使用 ,else如果不满足if条件,则执行else里面的语句
if(条件){
//条件满足才执行里面的
}
if(条件){
//条件满足才执行里面的
}else{
//条件不满足就执行这里面的
}
switch case default(选择语句)
case:用来定义一组分支选择,如果某个值和switch中给出的值一样,就会从该分支开始执行。
例如:
swith(表达式){
case1:
语句1;
break;
case2:
语句2;
break;
case3:
语句3;
break;
default://如果所有的case都无法匹配,则执行default里面的语句
语句:
break;
}
break与continue:
break:
跳出循环。例如当break用于开关语句switch中时, 可使程序跳出switch而执行switch以后的语句;
continue:
其作用为结束本次循环。即跳出循环体中下面尚未执行的语句,
对于while循环,继续求解循环条件。而对于for循环程序流程接着求解for语句头中的第三个部分expression表达
式。
continue语句和break语句的区别是:
continue语句只结束本次循环,而不终止整个循环的执行。
而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。
for循环语句
例如:
for(初始化表达式;测试表达式;计数表达式;) {
}
while do while循环语句
while(条件表达式){
//满足条件表达式才执行
}
do{
语句;//先执行再判断条件
}while(条件表达式);
return用来结束一个方法的执行。它后面可以跟一个方法声明中要求的值。
true(真) false(假)
void(表明方法没有返回值)
基本数据类型
byte字节型 char 字符型 int整型 short短整型 long长整型 float浮点型 double双精度 boolean布尔型
new创建对象
import导入 在源文件的开始部分指明后面将要引用的一个类或整个包,这样就不必在使用的时候加上包的名字。
null 空
enum枚举
以下关键字不常用:
goto synchronized assert native volatile transient const