`
luyier
  • 浏览: 8885 次
社区版块
存档分类
最新评论

java关键字总结用法

阅读更多

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转到        
(这些只是保留字,最好不用)

 

0
3
分享到:
评论

相关推荐

    java关键字总结文档

    ### Java关键字总结 Java是一种广泛使用的面向对象编程语言,它具备简单性、可移植性、高性能等特点。在Java中,关键字具有特殊的语法含义,不能用作标识符(例如变量名或方法名)。以下是对给定文件中提到的Java...

    java关键字总结

    下面是对Java关键字的详细总结。 一、类型关键字 1. 基本数据类型:`byte`(1字节)、`short`(2字节)、`int`(4字节)、`long`(8字节)用于表示整数;`float`(4字节)、`double`(8字节)用于表示浮点数;`char...

    Java 关键字总结(48个)

    Java 关键字总结 Java 关键字是 Java 编程语言中的一种特殊词语,用于定义、声明和控制程序的流程。以下是 Java 中 48 个关键字的总结: 1. abstract:abstract 关键字可以修改类或方法。abstract 类可以扩展...

    JAVA关键字总结(整理后最全最详细)

    下面是对Java关键字的详细总结,按照给出的部分内容进行排列: 1. `abstract`: - `abstract` 关键字用于声明抽象类或抽象方法。抽象类不能被实例化,只能作为其他类的基类。抽象方法没有具体的实现,必须在子类中...

    Java关键字大全

    Java关键字大全 Java语言中有多种关键字,每个关键字都有其特定的用途和作用。下面是Java关键字大全的详细解释: 1. abstract关键字 abstract关键字可以修改类或方法。abstract类可以扩展(增加子类),但不能...

    java关键字总结珍藏版(48个)

    ### Java关键字总结珍藏版(48个) #### 1. abstract - **定义与用途**:`abstract`关键字在Java中主要用于定义抽象类和抽象方法。抽象类是指那些不能直接实例化的类,它们通常会被继承来提供进一步的实现细节。而...

    Java关键字、标识符、注释、转义字符.docx

    黑色为保留字(现阶段没有在 Java 程序当中使用,但是先预约保留下来,以备日后使用),保留字跟关键字具有同样的等级,不可被用来作为标识符。 常用的 Java 关键字包括: * 访问修饰符:public、private、...

    java关键字详情.doc

    该文档主要介绍了java关键字的用法及说明

    Java关键字的用法

    ### Java关键字的用法 Java作为一种广泛使用的编程语言,拥有丰富的关键字来支持其核心功能与特性。本文将详细介绍部分重要的Java关键字及其用法。 #### 1. `abstract` `abstract`关键字用于定义抽象类或抽象方法...

    Linux中Java变量与java关键字。MyEclipse快捷键大全。Java方法

    首先,让我们来谈谈“Linux中Java变量与java关键字”。在Java编程中,变量是存储数据的容器,它们可以是基本类型(如int、float、boolean等)或引用类型(如对象)。在Linux环境下,Java程序的运行与Windows或Mac...

    Java关键字分类解释

    ### Java关键字分类解释 #### 一、类与接口定义关键字 - **class**: 在Java中,`class`关键字用于声明一个类。类是面向对象编程的基本单元,它定义了一组属性(成员变量)和方法(成员函数),这些共同构成了一个...

    Java关键字总结珍藏版

    Java 关键字是编程语言中具有特殊含义的保留词汇,它们在编程中扮演着至关重要的角色。本篇文章将深入解析 Java 中的一些关键关键字,并提供相关的编程示例。 1. `abstract` 关键字: `abstract` 可以用于修饰类和...

    Java super关键字使用

    本篇文章将深入探讨`super`关键字的使用方法,包括其在构造函数、方法调用以及字段访问中的应用。 ### 1. 构造函数调用 当子类继承父类时,有时候我们需要在子类的构造函数中调用父类的构造函数。Java中的`super`...

    Java关键字详细解

    这篇文档《Java关键字详细解》将深入探讨Java中的关键字及其用途。 首先,我们来看看Java中的主要关键字。`public`、`private`、`protected`是访问修饰符,用于控制类、方法和变量的访问权限。`public`可以被任何...

    java关键字、保留字

    Java关键字是由Java语言预定义的标识符,具有特殊的含义,不能用作变量名、方法名或类名等自定义标识符。本文将详细介绍Java中的关键字及其用途。 #### 关键字列表与解释 1. **abstract** - **用途**:用于声明...

    JAVA关键字列表

    JAVA关键字列表 Java是一种面向对象的编程语言,具有多种关键字,用于控制程序的执行、定义变量、类和方法等。本文档系统列举了Java的关键字及其用法分类,总共分为以下几个类别:访问控制、类、变量修饰符、流程...

    Java关键字的描述

    综上所述,Java关键字是构成Java语言核心语法的重要元素,熟练掌握这些关键字的使用对于编写高效、安全的Java程序至关重要。无论是抽象类与方法的定义、逻辑值的操作、循环与条件控制、异常处理,还是基本数据类型的...

    Java关键字final、static使用总结

    "Java关键字final、static使用总结" 在 Java 编程语言中,final 和 static 是两个非常重要的关键字,它们可以用来修饰类、方法、变量等,了解它们的使用方法和限制非常重要。本文将详细总结 final 和 static 的使用...

    Java关键字及其作用

    这个关键字表明方法的实现是用非 Java 语言(通常是 C/C++)编写的,通常与Java Native Interface (JNI)一起使用。 8. **new**:创建。new 关键字用于动态分配内存并创建类的实例,也就是对象。 以上就是 Java ...

Global site tag (gtag.js) - Google Analytics