java中约有五十个关键字,我认为关键字是人机交流最重要的媒介语句,可以帮助机器识别人的命令,因此运用好关键字意味着可以更方便简洁地书写代码,可以避免很多冗长的代码。印象比较深的是在做五子棋游戏中,由于同一个数组在多个不同类中要多次使用,当时没有想到用“static”关键字来定义数组,结果在不同类中创建了很多个相同的数组,每个类中还要定义很多重复的方法,动一发而牵百身,十分不方便。
不同的关键字必然对应着不同方面的规则,因此是有必要对关键字进行分类记忆的。
有个很容易记忆的规则是,所有的关键字都是“小写字母”。
当然,这么分显然还不够,那么下面就以我个人的记忆链来再次分类吧。
**0.java是完全面向对象的,因此“类”的概念是非常重要的,关于“类”最基础的关键字有两个:
——class:声明类
——interface:声明接口
**0.首先每个类,都是在一定的包内,那么对于“包”的声明和引用,有两个关键字:
——import:1.导入包或类,使导入的包或类的源代码在当前你写的类可见;
e.g. import javax.swing.*;
//如果不导入包,则用到类时,要写类的全称限定;
2.如果要继承内部类,除非都是同一类中的内部类,否则必须要用import导入该内部类,即使子类写在同一页java文件中;
——package:指定书写的类所驻留的java包
e.g. package com.mycompany;
public class MyClass{ }
//MyClass类是在mycompangy包下的
**0.其次书写每个类的时候,类前都有“修饰限定符”,来表示该类的访问级别,有八个关键字是关于修饰限定符的:
——public:1.用于修饰类、方法、变量,所有类和包都可以访问,即“公开的”;
2.一个类内,只能含有一个public的类;
3.接口、抽象类里面默认的方法都是public的;
4.子类继承父类的方法,如果是public类型的,则重写不得小于public;
e.g. public class A{
public void function(){
public int a;
}
}
——protected:1.用于修饰类(但不能是顶级类)、方法、变量,在同一个包下可以访问,即“受保护的”;
2.系统里默认类的修饰符是protected;
——private:1.用于修饰类(只能是内部类)、方法、变量,只能在本类里访问,不能在任何的外部类甚至是子类中访问,即“私有的”;
——static:1.用于修饰类(只能是内部类)、方法、变量;
2.如果是用static定义了的方法,则可以直接用“类名.方法名”的方式直接调用该方法,而不必实例化类的对象;static方法中只能调用static属性;
3.如果是用static定义了的属性,则可以直接调用属性,不必实例化类的对象;
4.类的某一个对象的static属性值被改变后,这个类所有的static属性都会改变;
5.static代码块,这是独立存在的,java按顺序向下读取,且只读取一次:
e.g. Test3(图)
e.g.
——final:1.用于修饰非抽象类、非抽象类成员方法和变量;
2.意为“最终的,固定不变的”,所以final类没有子类(终极类);final方法可以被继承,但是不能被重写(固定不变的);final修饰的变量(可以是对象变量)就是常量(固定不变的);
3.“final空白”的情况:就是用final声明一个final变量,但是先不赋值:
a.在类的构造函数里给其写赋值的方法,那么类的每个对象都可以有不同值的final变量,但是还是具有final属性,即只能赋值一次。
b.在普通方法中先声明一个final变量,之后再赋值;
e.g.(图)
——abstract:用于修饰类、方法;
abstract类是抽象类,可以拓展子类;
abstract方法用于抽象类与接口,在本类中不能实现方法体,是在某个子类中重写方法体实现,因此abstract类不能直接实例化对象;
由于abstract类必须要子类来继承实现,所以不能应用于private、static、final方法,因为这些方法不能在子类中重写;同时在final类中也不能有abstract方法,因为final类没有子类;
——native:应用于方法,以指示该方法是用 Java 以外的语言实现的。
——volatile:表明两个或多个变量必须同步地发生变化,在“线程”概念中用到;
——synchronized:表明一段代码需要同步执行,在“线程”概念中用到;
修饰符的访问范围如下:
| 修饰符 | 类 |成员访求|构造方法|成员变量|局部变量|
| abstract 抽象的 | √ | √ | - | - | - |
| static 静态的 | - | √ | - | √ | - |
| public 公共的 | √ | √ | √ | √ | - |
| protected 受保护的 | | √ | √ | √ | - |
| private 私有的 | - | √ | √ | √ | - |
|synchronized 同步的| - | √ | - | - | - |
| native 本地的 | - | √ | - | - | - |
| transient 暂时的 | - | - | - | √ | - |
| volatile 易失的 | - | - | - | √ | - |
| final 不要改变的 | √ | √ | - | √ | √ |
**0.而每个子类可以继承一个父类或者实现多个接口,关于“继承与实现”,有2个关键字:
——extends:1.用于子类继承父类或者接口,或者接口继承接口;
2.注意子类只能有一个父类(就像一个孩子只有能有一个生父),但可以有多个接口
——implements:1.用于接口在类中的实现;
2.注意,接口中所有的方法都要进行重写;
**0.接着每个类里面可以定义许多属性,而属性可以是“基本类型”或者“引用类型”,对应前者,有9个关键字:
byte: 8位
char: 16位 字符型
short: 16位 短整型
int: 32位 整形
float: 32位 单精度浮点型
long: 64位 长整型
double: 64位 双精度浮点型
blooean: true 和 false 布尔型
enum:枚举型
引用类型又称类类型,由接口,抽象类,数组等组成,而类一般都是大写字母开头,所以可以排除在关键字外,这个只是记忆的一种方法,其中细究的原因我还没研究,因此暂不展开了。
**0.而对应不同的数据类型的访问值,又有三个关键字:
false:布尔型的一个值
true:布尔型的一个值
null:除了基本数据类型的其他类型的初始值
**0.然后开始写方法体,那么方法可以分为有返回值和无返回值类型,这里对应的有两个关键字:
void:表示返回值为空,写在方法名之前
e.g. public void B(){ }
return:表示有返回值,写在方法体内
e.g. public int A(){
int k;
return k;}
**0.方法体内如果有“引用”父类或者自己的类,则又有两个关键字:
this:1.可以区别形参还是属性:this.属性名 代表“我的属性”;不带this的是形参;
2.代表当前对象;
super:当父类的方法被重写后可以用"super.父类的方法"来调用父类的方法;
**0.在方法体中我们常常会用循环、判断等流程控制,对应此,又有10个关键字:
if: 条件语句的引导词
else: 用在条件语句中,表明当条件不成立时的分支
for: 一种循环语句的引导词
do: 用在do-while循环结构中
while: 用于指定一个“只要条件为真就会重复”的循环。
switch: 分支结构语句的引导词
case: 用在switch语句中,表明其中的一个分支
default: 默认,例如,用在switch语句中,表明一个默认的分支
break: 用于提前退出 for、while 或 do 循环,或者在 switch 语句中用来结束 case 块;
continue: 用来跳转到 for、while 或 do 循环的下一个迭代,而不是跳出循环;
**0.当我们创建了一个类以后就可以实例化一个对象,这里就会关系到一个关键字:
new:开辟一块新的内存空间来存储要创建的新对象;
**0.而以后看到一个对象却不知道其属于哪个类,那么确定对象就有一个关键字:
instanceof:用来确定对象所属的类
e.g. if (node instanceof TreeNode){ }
// 判断node是否是TreeNode类的
**0.还有,我们书写代码的时候一定会有可能引发异常的语句,对于“异常处理”,java中又有5个关键字:
try:尝试
catch:捕获
finally:最终地
throw:抛出
throws:抛出
此外,Java还有两个保留字:
const常量
goto转到
(这些只是保留字,最好不用)
分享到:
相关推荐
总结了Java学习中的52个关键字(包括一些总结),如果觉得自己Java基础知识需要总结一下的,可以下载下来瞧瞧 2.this和super 1>在你的方法中的某个刑参名与当前对象的某个成员有相同的名字,这 时为了不至于混淆,...
所有Java关键字的使用方法,文件属于TXT文档。
该文档主要介绍了java关键字的用法及说明
本文档系统列举了Java的关键字及其用法分类
Java super关键字使用demo
java同步synchronized关键字用法示例
Java关键字是Java编程语言中预定义的保留字,用于表示特定...了解和掌握这些关键字的作用和使用方法,有助于提高Java程序的可读性、可维护性和健壮性。因此,作为Java开发人员,应该熟悉并掌握这些关键字的含义和用法。
列出了常用的java关键字,并加以解释及介绍用法,很实用。
揽括了java中常见的关键字及用法,包括Abstract、instanceof、private、protected等等。
Java关键字之this用法详解.rar
java中super关键字的三种用法
Java初学者应该了解的关键字用法,很不错的哦!!!
这是Java里的关键字,一些用法,是正确的的,没有压缩。
讲述java中static的关键字的作用
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。
Java中static关键字用法总结[借鉴].pdf
synchronized关键字在java中的重要性 以及常用的方法 还有它的详解
synchronized关键字我们大家都知道是线程同步关键字.总结一下日常的使用方法,还有一个坑.
主要介绍了Java this 关键字的使用方法详解的相关资料,希望通过本文能帮助到大家,让大家彻底理解掌握这部分内容,需要的朋友可以参考下
instanceof 运算符是用来在运行时判断对象是否是指定类及其父类的一个实例。这篇文章主要介绍了Java关键字instanceof用法解析,需要的朋友可以参考下