好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java关键字(keyword)和保留字(reservedword)的用法.pdf

10页
  • 卖家[上传人]:飞***
  • 文档编号:47746998
  • 上传时间:2018-07-04
  • 文档格式:PDF
  • 文档大小:351.43KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • Java 关键字 (keyword)和保留字 (reserved word)的用法在 java 中有 48 个关键字和2 个保留字经过学习,借助了谷歌的力量我将这些关键字和保留字整理如下一.访问限定1.public 关键字 : public 的意思是公有的,public 作为关键字可以放在类前,表示这个类可以被其他包中的类的对象所访问Public 限定的类在文件中只允许有一个,且类名必须与文件名相同如果 public 用来修饰方法,表示方法可以被其他包中的类调用如果 public 用来修饰属性,则可直接通过对象名.属性来访问对象的属性2.private 关键字 : private 的意思是私有的,其可调用性范围最小在方法的前面加上private,则方法只能由内部的方法或者构造器调用,通常,属性都是用private 限定的,而一般的类前,都不加private 限定在类继承时,父类中的private 方法将不能被子类继承当我们给某个构造器加上private 修饰符时,则不能创建某个类的对象3.protected 关键字 :protected 限定符界于public 和 private 之间。

      被protected 限定的方法,子类可以继承,在同一个包内可以访问,在不同的包内不可以访问这些关键字的用法如上所述,但为了更好的理解一些细节的问题,大家可以看一下我对下面这些问题的总结那么,一个类中是否可以定义两个或者两个以上的public 类?我们可以在eclipse 中运行一下,结果如下:由上可见, 在一个类中, Public 限定的类在文件中只允许有一个,且类名必须与文件名相同若在类里面还要创建一个类的话,那就只能是默认的,不可以加其他访问修饰符,或者,可以在已有的类的内部,再创建一个类,但名字必须不同与文件名若属性使用public 进行修饰,就可以直接通过对象·属性来访问对象的属性输出结果是name=向聘这里就是直接通过创建的对象st.name 来访问 st 对象的 name属性的另外,我们还要注意,在接口中默认的访问修饰符是public ,在定义方法的时候是不可以用 protected或 private来替代的接口都是要通过子类继承并重写方法来实现的,否则就会报错,若用private来修饰接口,则接口是不能被继承的而protected限定的类只能在包内继承,不能在包外继承,所以,也不能用来修饰接口。

      当然,这些只是我想的具体化一点的理解或者你可以直接认为是“因为接口默认的访问修饰符就是public的,表示它只接受public的访问修饰符”二.类,方法和变量修饰符4.Static关键字 :static的意思是静态的Static的使用方法如下:当一个方法被static限定时,可以直接使用类名. 静态方法名() 调用而不是static限定的方法必须先创建对象,通过对象才能够调用方法Static的属性又称为类属性, 可以不创建类的对象而直接调用且类的某一个对象static属性值改变后,这个类的所有对象的属性值都会改变也就是说,用static声明的属性只在内存中存在一份)5.final关键字 :final的意思是最终的当 final放在属性前,即表示这个属性是个常量,这个属性的值是不能改变的当 final放在方法前,则表示当子类继承时,不可以重写这个方法当 final放在类前时,则表示这个类不能被继承当一个属性要用到匿名内部类里面时,必须用final来修饰它那么, 使用 static关键修饰变量后, 循环创建 10 个对象输出结果是什么?原因是为什么?请看下面的程序段:输出的结果是i=0 ,i=1 ,i=2 ,i=3 , i=4 ,i=5 ,i=6 ,i=7 , i=8 ,i=9 (注意换行输出)。

      那么,为什么会这样呢这就归结于static声明的属性改变后,它在这个类中的所以属性都会改变了也就是在内存中上述程序中的i 只占有 1 个内存6.class关键字 :class的作用就是用来声明一个类,且类名要与文件名相同7.abstract关键字 :abstract的意思是抽象的abstract class定义了一个抽象类,抽象类是介于接口和类之间的定义在抽象类中,可以定义已经实现了的方法,也可以定义像接口中一样没有实现的方法(即抽象方法) ,但是继承的子类中必须实现抽象类中没有实现的方法子类只能同时继承一个抽象类8.interface关键字 :interface的作用就是定义一个接口接口中定义了一个没有任何方法体实现的方法,只要定义方法返回类型,方法名,参数表,不能有实现接口是不能直接实例化一个对象的,必须要通过子类继承后重写方法来实现它9.extends关键字 :extends的作用就是继承类用此关键词继承的子类,拥有了主类的方法和属性,不需要再把父类中所有的方法都写出来,只需要重写我们需要的方法一个类只能有一个父类10.implements关键字 :implements的作用就是继承接口。

      Implements与 extends是不同的,实现类中,必须重写接口中定义的方法一个类可以实现多个接口11.native关键字 : native的意思是本地的native 关键字可以应用于方法,以指示该方法是用 Java 以外的语言实现的12.new关键字 :new 是新,创建的意思new 关键字用于创建类的新实例new 关键字后面的参数必须是类名,并且类名的后面必须是一组构造方法参数(必须带括号)例如: student st=new student(); 参数集合必须与类的构造方法的签名匹配 左侧的变量的类型必须与要实例化的类或接口具有赋值兼容关系13. strictfp关键字 :strictfp是严格 , 精准的意思strictfp的意思是FP-strict,也就是说精确浮点的意思在Java虚拟机进行浮点运算时, 如果没有指定strictfp关键字时, Java的编译器以及运行环境在对浮点运算的表达式是采取一种近似于我行我素的行为来完成这些操作,以致于得到的结果往往无法令人满意而一旦使用了strictfp来声明一个类、 接口或者方法时,那么所声明的范围内Java的编译器以及运行环境会完全依照浮点规范IEEE-754来执行。

      因此如果想让浮点运算更加精确,而且不会因为不同的硬件平台所执行的结果不一致的话,那就请用关键字strictfp可以将一个类、 接口以及方法声明为strictfp,但是不允许对接口中的方法以及构造函数声明 strictfp关键字14.synchronized关键字 :synchronized是线程、同步的意思synchronized 关键字可以应用于方法或语句块,并为一次只应由一个线程执行的关键代码段提供保护synchronized 关键字可防止代码的关键代码段一次被多个线程执行如果应用于静态方法,那么,当该方法一次由一个线程执行时,整个类将被锁定如果应用于实例方法,那么,当该方法一次由一个线程访问时,该实例将被锁定如果应用于对象或数组,当关联的代码块一次由一个线程执行时,对象或数组将被锁定15.transient关键字 :transient是短暂,瞬时的意思transient 关键字可以应用于类的成员变量,以便指出该成员变量不应在包含它的类实例已序列化时被序列化当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的Java的 serialization提供了一种持久化对象实例的机制。

      当持久化对象时,可能有一个特殊的对象数据成员,我们不想用serialization机制来保存它为了在一个特定对象的一个域上关闭serialization,可以在这个域前加上关键字transienttransient是 Java语言的关键字, 用来表示一个域不是该对象串行化的一部分当一个对象被串行化的时候,transient型变量的值不包括在串行化的表示中,然而非transient型的变量是被包括进去的16.volatile关键字 :volatile是易失的意思volatile 关键字用于表示可以被多个线程异步修改的成员变量注意: volatile 关键字在许多 Java 虚拟机中都没有实现 volatile 的目标用途是为了确保所有线程所看到的指定变量的值都是相同的Java 语言中的 volatile 变量可以被看作是一种“程度较轻的 synchronized”;与synchronized 块相比, volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分三.程序控制语句17. break关键字 :break的意识是跳出,中断。

      break 关键字用于提前退出 for、while 或 do 循环,或者在 switch 语句中用来结束 case 块break 总是退出最深层的 while、for、do 或 switch 语句18.continue关键字 :continu的意思是继续continue 关键字用来跳转到 for、while 或 do 循环的下一个迭代continue 总是跳到最深层 while、for 或 do 语句的下一个迭代19 .Return关键字 :return的意思是返回return 关键字会导致方法返回到调用它的方法,从而传递与返回方法的返回类型匹配的值如果方法具有非 void 的返回类型, return 语句必须具有相同或兼容类型的参数返回值两侧的括号是可选的20 .Do 关键字 :do 的意思是运行do 关键字用于指定一个在每次迭代结束时检查其条件的循环do 循环体至少执行一次条件表达式后面必须有分号21 .While关键字 :while的意思是循环while 关键字用于指定一个只要条件为真就会重复的循环22.if关键字 : if的意思是如果if 关键字指示有条件地执行代码块条件的计算结果必须是布尔值。

      if 语句可以有可选的 else 子句,该子句包含条件为 false 时将执行的代码包含 boolean 操作数的表达式只能包含 boolean 操作数23.else关键字 :else的意思是否则else 关键字总是在 if-else 语句中与 if 关键字结合使用else 子句是可选的,如果 if 条件为 false,则执行该子句24.for关键字 :for的意思是循环for 关键字用于指定一个在每次迭代结束前检查其条件的循环for 语句的形式为 for(initialize; condition; increment) 控件流进入 for 语句时,将执行一次 initialize 语句每次执行循环体之前将计算 condition 的结果如果 condition 为 true,则执行循环体每次执行循环体之后,在计算下一个迭代的 condition 之前,将执行 increment 语句25.instanceof关键字 :instanceof的意思是实例instanceof 关键字用来确定对象所属的类26. switch关键字 :switch的意思是观察switch 语句用于基于某个表达式选择执行多个代码块中的某一个。

      switch 条件的计算结果必须等于 byte、char 、short 或 intcase 块没有隐式结束点break 语句通常在每个 case 块末尾使用, 用于退出 switch 语句如果没有 break 语句,执行流将进入所有后面的 case 和 / 或 default 块27. case关键字 :case的意思是返回观察里的结果case 用来标记 switch 语句中的每个分支case 块没有隐式结束点。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.