说说Java中你不知道switch关键字】的更多相关文章

Switch语法 switch作为Java内置关键字,却在项目中真正使用的比较少.关于switch,还是有那么一些奥秘的. 要什么switch,我有if-else 确实,项目中使用switch比较少的一个主要原因就在于它的作用能被if-else代替,况且switch对类型的限制,也阻碍了switch的进一步使用. 先看看switch的语法: switch(exp){ case exp1: break; case exp2: break; default: break; } 其中exp的类型限制为…
form:http://blog.csdn.net/luoweifu/article/details/6776240 Java中的50个关键字 关键字也称为保留字,是指java语言中规定了特定含义的标示符.对于保留字,用户只能按照系统规定的方式使用,不能自行定义.Java中有50个常用关键字: 与数据类型相关(10) 关键字 类型 占字节数 备注 boolean 布尔数据类型 1 有true和false两个值 int 整型数据类型 4   long 长整型数据类型 8   short 短整型数据…
Java中的两个关键字——super.this 神话丿小王子的博客主页 一.super super 是java中方的一个关键字,用它可以引用父类中的成员: super可用于访问父类中定义的属性 super可用于调用父类中定义的成员方法 super可用于在子类构造器中调用父类的构造器 使用super关键字注意事项: 1.当子类和父类都有同名的属性时,在子类中如果要使用父类的属性 super . 属性 2. super只能应用在成员方法和构造方法中,不能用在静态方法中(和this是一样的) 3.如果…
此翻译纯属个人爱好,由于水平所限,翻译质量可能较低.网络上可能存在其它翻译版本,原文地址:http://blog.jooq.org/2013/08/26/silly-metrics-the-most-used-java-keywords/ 英文原文:Silly Metrics: The Most Used Java Keywords 翻译正文: 告诉我: 难道你从来没有对你使用“synchronized”的次数感到疑惑? 你没有过对不使用“do{}while{}”循环结构而感到担忧? 你是一个使…
1.标识符 含义:标识符用于给程序中的类.变量.方法命名的符号. 组成:数字(0-9).字母(a-z)(A-Z).下划线(_).美元符号$. 命名规则:1.数字不能够作为命名符号的开头 2.不能够使用关键字和保留字,但能够包含关键字和保留字 3.Java中严格区分大小写,长度无限制 4.标识符不能都包含空格 个性特征:类名:组成类名的每一个单词的首字母都要大写. eg: public class MethodDemo(){} 变量名:变量名的首字母小写,其他组成的单词首字母大写. 方法名:组成变…
1.标识符 含义:标识符用于给程序中的类.变量.方法命名的符号. 组成:数字(0-9).字母(a-z)(A-Z).下划线(_).美元符号$. 命名规则:1.数字不能够作为命名符号的开头 2.不能够使用关键字和保留字,但能够包含关键字和保留字 3.Java中严格区分大小写,长度无限制 4.标识符不能都包含空格 个性特征:类名:组成类名的每一个单词的首字母都要大写. eg: public class MethodDemo(){} 变量名:变量名的首字母小写,其他组成的单词首字母大写. 方法名:组成变…
Java中关键字(keyword)和保留字(reservedword) Keyword :Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等. Reserved word:保留字是为java预留的关键字,他们虽然现在没有作为关键字,但在以后的升级版本中有可能作为关键字.如下列表: Java关键字     访问控制:private 私有的   protected 受保护的   public 公共的类.方法和变量修饰符abstract 声明抽象  clas…
Java中的关键字有很多,abstract  default  goto*  null  switch  boolean  do  if  package  nchronzed  break  double  implements  private  this  byte  else  import  protected  throw  throws  case  extends  instanceof  public  transient  catch  false  int  return …
这几天看到类在继承时会用到this和super,这里就做了一点总结,与各位共同交流,有错误请各位指正~ this this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针. this的用法在java中大体可以分为3种: 1.普通的直接引用 这种就不用讲了,this相当于是指向当前对象本身. 2.形参与成员名字重名,用this来区分: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class Person {     private in…
Java中有一些或常用,或不常用,但却不得不知关键字,本篇文章将讨论这些关键字的作用. transient transient关键字可能用的不是那么频繁,但却是一个很重要的关键字,它的作用是在对象序列化过程中体现的.如果一个类的变量被transient修饰,那么这个对象在序列化过程中,不会序列化这个变量,同时,在反序列化过程中,也不会去反序列这个变量. 笔者有时候会遇到这样一种情况,可能是因为笔者经验不足.在使用JPA进行数据库操作的时候,某些对象在序列化到数据库的时候,会有一些变量并不想要去存…
今天练习到Java中的this和super关键字,我有如下总结: 1.子类继承父类,子类初始化对象,必须先调用父类构造方法,因为随时有可能要使用父类的成员变量. 2.get和set方法只是对成员变量进行赋值操作,而非初始化. 3.构造方法既能对成员变量进行初始化,又能对其进行赋值操作. 4.子类只要调用父类的构造方法(不管是带参还是无参都行,都用super(······)调用)即可对父类的成员进行初始化, 5.如果子类有两个构造方法,一个可以调用父类带参构造方法,另一个可以用this(···)调…
在Java开发中我们经常会用到一些关键字,关键字的定义很有意思"Java事先定义好的,具有特殊含义的单词",那么我们怎么来用好关键字呢?下面我们对一些常见的关键字进行分析和比较; 1.目录 return break continue this super return return是Java编程中常用的一个关键字,但在这个关键字究竟是干什么的,有什么注意的呢,在这里详解一下,; return有两个作用: 1.作为返回值 2.作为终止语句 Java中任何一个方法不管是否含有返回值,都是可…
java中true ,false , null在java中不是关键字,也不是保留字,它们只是显式常量值,但是你在程序中不能使用它们作为标识符. 其中const和goto是java的保留字.java中所有的关键字都是小写的,还有要注意true,false,null, friendly,sizeof不是java的关键字,但是你不能把它们作为java标识符用 1]Java标识符只能由数字.字母.下划线"_"或"$"符号以及Unicode字符集组成 [2]Java标识符必须…
5.抛出throw关键字 马克-to-win:我们先说5/0的原理,当程序运行到5/0的时候,java系统JVM会在后台new出一个除0异常实例,之后把这个实例传入catch块儿供开发者使用.马克-to-win:而这里throw new Exception();是开发者自己主动new出一个异常实例,之后把这个实例传入catch块儿供开发者自己使用.马克-to-win:对于catch来讲,不管谁抛的,处理起来都一样. (新手必须忽略)意义是什么?见后面的sun的例子(1.5.4_a):if(url…
看JAVA的反射时,看到有个synthetic ,还有一个方法isSynthetic() 很好奇,就了解了一下: 1.定义 Any constructs introduced by a Java compiler that do not have a corresponding construct in the source code must be marked as synthetic, except for default constructors, the class initializ…
很久之前一直有一个疑问,最近重新翻了遍JVM的书,才算是终于有所顿悟.问题如下: 被自己遗忘的问题 package org.hanyan.test.testClass; public class T3AboutThis { public static void main(String[] args) { new SubT3().func(); SuperT3 s = new SuperT3(); System.out.println(s instanceof SubT3);//false } }…
1.final: final关键字可用于类.方法.变量前. final修饰的类不可被继承,例如java.lang.Math就是一个 final类,不可被继承. final修饰变量,在显示初始化后不可改变变量值,用于常量定义.如果final变量是引用变量,则不可以改变它的引用对象,但可以改变对象的数据(属性). final修饰的方法不可被重写. 错误案例) package com.sp; public final class Fish { final String name = "鱼";…
emmmmmm也真的是好久没有写过java了,因为项目需要, 最近又必须重新拾起来了,虽然好多东西也都忘得差不多了.... 然后发现 竟然把super和this傻傻分不清.... 开个帖子记录一下: 一.this关键字主要有三个应用: (1)this调用本类中的属性,也就是类中的成员变量: (2)this调用本类中的其他方法: (3)this调用本类中的其他构造方法,调用时要放在构造方法的首行. 应用一 Public Class Student { int age; //定义一个成员变量int…
首先要看一个问题,if 语句适用范围比较广,只要是 boolean 表达式都可以用 if 判断:而 switch 只能对基本类型进行数值比较.两者的可比性就仅限在两个基本类型比较的范围内.说到基本类型的数值比较,那当然要有两个数.然后重点来了--if 语句每一句都是独立的,看下面的语句:if (a == 1) ...else if (a == 2) ...这样 a 要被读入寄存器两次,1 和 2 分别被读入寄存器一次.于是你是否发现其实 a 读两次是有点多余的,在你全部比较完之前只需要一次读入寄…
类的静态成员函数不能访问非静态的成员函数以及非静态的成员变量, 但是反过来却是成立的. 即:非静态成员函数可以访问静态成员函数和静态成员变量. 这个可以从静态成员的特点来解释,因为静态成员属于类,因此即便是没有类的对象我们也能访问类的静态成员. 但是非静态成员函数由于只能通过类的对象来访问,所以其必须要有对象才行. 那,反证法: 假如,类的静态成员函数可以访问非静态的成员函数:示例代码如下, class Test { public static int i; private int j; pub…
1.final类不能有子类,也就谈不上继承的说法,如果用final修饰成员变量或者局部变量,那成了常量需要制定常量的值. 2.对象的上转型对象,上转型对象不能操作子类新增的成员变量,不能调用子类新增的方法,上转型对象可以访问子类继承或者隐藏的成员变量,也可以调用子类继承的方法或者子类重写的实例方法.但是可以强制将对象的上转型对象再强制转换到一个子类对象,这时该子类对象又恢复了子类对象属性. 3.继承和多态,多态性就是指父类的某个方法被子类重写,可以各自产生自己的行为, 4.abstract抽象类…
1.static关键字 经static关键字修饰的成员被该类的所有对象所共享,任意一对象对静态变量的修改其它对象都是可见的.通常通过类名来引用static成员.类加载的连接阶段将会为静态成员变量在jvm内存的方法区分配空间,并在类的初始化阶段赋初值. 一个类的static成员变量只有“一份”(存储在方法区),无论该类创建了多少对象.看如下的示例: public class StaticDemo { public static void main(String[] args) { People p…
1:static关键字 利:1)对对象的共享数据提供单独的空间存储. 2)修饰的方法可以直接被类名调用 弊:1)生命周期长. 2)访问出现限制(只能访问静态) 它可以有静态方法,静态类,静态变量 2:super关键字 1)使用super关键字调用父类的成员变量和成员方法. 格式1:super.成员变量 格式2:super.成员方法([参数1,参数2...]) 2)使用super关键字调用父类的构造方法 格式1:super([参数1,参数2...]) 总结:this代表当前对象(可以输出或地址).…
if-switch 选择结构 switch结构可以更好的解决等值判断问题switch 选择结构的语法:switch (表达式){ case 常量 1: //代码块1: break; case 常量 2: //代码块2: break; ...... default: //代码块n: break:} 解释:1.switch: 表示“开关”,这个开关就是switch后面小括号里的值,小括号里要放一个整形变量(表达式)或字符类型(表达式).2.case: 表示“情况.情形”,case必须是一个整型或字符…
1.strictfp, 即 strict float point (精确浮点). strictfp 关键字可应用于类.接口或方法.使用 strictfp 关键字声明一个方法时,该方法中所有的float和double表达式都严格遵守FP-strict的限制,符合IEEE-754规范.当对一个类或接口 使用 strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算.严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双…
this是对象内部指代自身的引用,同时也是解决成员变量和局部变量同名问题:this可以调用成员变量,不能调用局部变量:this也可以调用成员方法,但是在普通方法中可以省略this,在构造方法中不允许省略,必须是构造方法的第一条语句.,而且在静态方法当中不允许出现this关键字. super代表对当前对象的直接父类对象的引用,super可以调用直接父类的成员变量(注意权限修饰符的影响,比如不能访问private成员) super可以调用直接父类的成员方法(注意权限修饰符的影响,比如不能访问priv…
static指的是类的静态成员,实例间共享 volatile跟Java的内存模型有关,线程执行时会将变量从主内存加载到线程工作内存,建立一个副本,在某个时刻写回.valatile指的每次都读取主内存的值,有更新则立即写回主内存. 理解了这两点,逐句再来解释你的困惑: “既然static保证了唯一性”:static保证唯一性,指的是static修饰的静态成员变量是唯一的,多个实例共享这唯一一个成员. “那么他对多个线程来说都是可见的啊”:这里,static其实跟线程没太大关系,应该说对多个对象实例…
在平时编码中,我们可能只注意了这些static,final,volatile等关键字的使用,忽略了他们的细节,更深层次的意义. 本文总结了Java中所有常见的关键字以及一些例子. static 关键字 概述: 当static修饰类的属性或者方法时,那么就可以在没有创建对象的情况下使用该属性或方法. 静态块也是static的一个应用,用于初始化类时的一些操作. 静态方法和静态变量 划重点 被static修饰后的属性或者方法,使用时不需要new 一个类,用类.属性名或方法名访问. 比如java.la…
Java关键字(KeyWord):  对Java的编译器有特殊的意义,他们用来表示一种数据类型或者表示程序的结构. Java保留字(Reserved Word):为Java预留的关键字,现在还没有用到,但在升级版本中可能作为关键字被使用. java中共有53个关键字,其中有两个保留字(goto和const). 关键词是其含义由编程语言定义的词. Java关键字和保留字: abstract class extends implements null strictfp true assert con…
刚学习Java不久,今天遇到一个问题,需要在方法中修改传入的对象的值,确切的说是需要使用一个方法,创建一个对象,并把其引用返回,熟悉C#的我的第一反应就是C#中的ref/out关键字,结果发现Java中没有类似的关键字,所以只能想想如何解决此问题. 参数传递:方法的参数传递有两种,一种是值传递,一种是引用传递,但是其实都是拷贝传递. 值传递:就是把传递的[数据本身拷贝一份],传入方法中对其进行操作,拷贝的是值.引用传递:就是把指向某个对象的[引用拷贝一份],传入方法中通过此引用可以对对象进行操作…