1、abstract

  abstract修饰类,表示抽象的意思,抽象类可以含有非抽象变量和成员变量,也可以有普通方法和构造方法,但是不能被实例化(接口),但是可以被子类继承。

public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E> {
...
}

  abstract修饰方法,表示抽象方法,抽象方法必须位于抽象类中,并且不能有具体实现。

abstract public E get(int index);

2、break

  break在switch中用于跳出switch块,停止switch向下穿透的现象。

case value:expression;
break;

  break在循环中用于跳出循环。

while(...){
...
break;
}

  break也可以在后面接标签,用来跳出一些嵌套比较复杂的循环中。

flag:
for(...){
for(...){
break flag;
}
}

3、continue

  continue用于在循环中跳过本次循环。

while(...){
...
continue;
}

  continue也可以在后面接标签,在一些嵌套比较复杂的循环中跳过一次循环。

flag:
for(...){
for(...){
continue flag;
}
}

4、final

  • 修饰变量:将变量变为常量,在初始化变量后不能再改变值。
  • 修饰方法:被final修饰的方法不能被子类重写。
  • 修饰类:被final修饰的类不能被继承。

5、finally

  finally在try/catch语句块中处理一些后续的工作。例如关闭网络连接和输入输出流等。如果在try/catch中使用return,则finally会撤销这个return,无论如何都会执行finally中的语句。

6、goto

  Java中的保留关键字,没有实际意义,但是不能用做变量名。在C中表示无条件跳转语句。

7、instanceof

  instanceof用于判断类与对象的关系

  a instanceof b

8、private

  私有的,被private修饰的变量和方法只能在此类中访问,其他类或者其他包中的类也无法访问。

9、protected

  受保护的方法和变量只能给子类和基类访问。

10、public

  公有的,其他子类父类或者其他包的类均能访问。

11、return

  返回方法的数据,并结束方法。

12、static

  static修饰的代码块主要存放于堆的方法区。

  静态变量:依附在类中的变量,可以被类的所有的实例共用。

static int a = 0;

  静态方法:依附在类中的方法。静态方法只能访问类中的静态变量和静态方法。

publlic static void b(){
...
}

  静态块:在类加载的时候执行块中的语句,块中不能访问非静态变量。

static{
...
}

  静态内部类:用static修饰内部类。

13、super

  引用父类的的成员:

super.xxx

  变量或方法重名时用super调用父类的成员或方法。

  调用父类的构造方法:

super(xxx);

14、synchronzied

  synchronized关键字用于保证线程安全。由这个关键字修饰的方法或者代码块保证了同一时刻只有一个线程执行该代码。

synchronized(obj){...}

  当一个线程访问同步代码块时,检查obj是否有锁,如果有就挂起。如果没有就获得这个obj的锁,也就是把其他线程锁在了外面。当代码执行完毕时释放该锁,其他线程获得锁继续执行代码。

15、this

  指向当前对象:this.xxx

  形参和成员名字重名时时用this区分。

  引用构造函数。

16、transient

  类接上序列化接口后,可以通过transient关键字将某些变量变得无法序列化。

transient int a = 1;

17、volatile

  volatile关键字修饰的变量在多线程中保持同步。相比synchronized效率要高,不会阻塞线程。但只能保证数据的可见性,不能保证数据的原子性。例如在处理i++的时候另外一个线程修改i的值,那么i的值将会发生错误,这是原子性导致的。

volatile int a;

Java常用关键字总结的更多相关文章

  1. JAVA常用关键字

    Java 中常用关键字: 一一解释(先以印象注明含义,若有错误或未填写的待用到后补充.更新):(蓝色为不确定部分) abstract : 虚类 boolean : 类型定义——布尔型 break : ...

  2. Java入门系列(二)Java常用关键字

    53个关键字 在JAVA中目前一共有53个关键字:其中由51+2个保留字=53个关键字 访问控制 private protected public default              类.方法和 ...

  3. Java常用关键字的原理及用法

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10843135.html 一:transient 用途:Java中一个类在定义时如果实现了Serilizabl ...

  4. java常用关键字(static、final、this、super)

    this关键字 this关键字的作用有 1.调用本类的成员变量 public class Soft{ private int a; public Soft(int a){ this.a=a; } } ...

  5. Java SE 基础:常用关键字

    Java SE 基础:常用关键字 常用关键字表

  6. JAVA基础部分复习(六、常用关键字说明)

    /** * JAVA中常用关键字复习 * final * finalize * finally * * @author dyq * */ public class KeyWordReview exte ...

  7. java常用英文解释

    java常用名词解释: OO: object-oriented ,面向对象 OOP:object-oriented programming,面向对象编程 Author:JCC Object:对象JDK ...

  8. JAVA常用数据结构及原理分析

    JAVA常用数据结构及原理分析 http://www.2cto.com/kf/201506/412305.html 前不久面试官让我说一下怎么理解java数据结构框架,之前也看过部分源码,balaba ...

  9. JAVA常用知识点及面试题总结

    1. String.StringBuffer.StringBuilder三者区别? (1)三者在执行速率上的比较: String<StringBuffer<StringBuilder 原因 ...

随机推荐

  1. Extjs更新grid

    基于Extjs4.2 原理是创建一个新的store,来覆盖原有的store. //创建数据 var newdatas = { name: "ly", age: 17, adress ...

  2. 浅析CAS与AtomicInteger原子类

    一:CAS简介 CAS:Compare And Swap(字面意思是比较与交换),JUC包中大量使用到了CAS,比如我们的atomic包下的原子类就是基于CAS来实现.区别于悲观锁synchroniz ...

  3. JavaScript基础1225

    JavaScript函数 1.函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块. tip:JavaScript对大小写敏感.关键词function必须是小写,并且必须以与函数名称相同的大小写 ...

  4. 排序1 - 选择排序 & 插入排序

    请原谅我没有按照之前图片的分类来介绍排序算法,先说最简单的两种排序算法(冒泡略过),选择排序和插入排序,之前老是容易记混.默认输出升序的序列啊,哈哈. 选择排序 对于输入长度为n的数组,一共比较n-1 ...

  5. 负载均衡服务之HAProxy基础配置(三)

    前文我们聊到了haproxy的代理配置段中比较常用的配置指令的用法以及说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12770930.html:今天我们来 ...

  6. 大数据MapReduce相关的运维题

    1.在集群节点中/usr/hdp/2.4.3.0-227/hadoop-mapreduce/目录下,存在一个案例 JAR 包 hadoop-mapreduce-examples.jar.运行 JAR ...

  7. 基于Koa实现留言版demo

    学习node.koa,随手做了一个留言板demo. 基本功能如下: 未登录用户可以查看主题列表和主题内容. 用户注册和登录功能. 登录用户可以发表.修改.删除自己的主题. 登录用户主题列表下方有发表主 ...

  8. ES6中对象的扩展

    ES6不仅为字符串.数值和数组带来了扩展,也为对象带来了很多新特性.这一节,我们来一起学习一下对象的扩展. 对象的传统表示法 我们回顾一下,对象的传统表示法: let person = { " ...

  9. 来自BAT大厂前端工程师的自白-怎么才能学好前端

    如果说理解学好web前端是先能找到一份工作,那么你应该这样做: 1.制定好一下系统的web前端学习规划,每天定量,学完什么知识点就掌握,能自己应用,而不是能看懂,写不出来东西. 2.不要自己一个人闷头 ...

  10. <string>头文件常用成员函数

    之前说过 string和vector一样,也是一种顺序容器,并且它也自带成员函数,用法和vector的成员函数差不多,不过它只能用来存放字符,也就是字符串. 在c++中,<string>基 ...