一阶段:JavaSE学习03拓展
看不懂或者不想看的可以跳往下一篇,这个只是让你知识面更宽更广
1.Switch拓展
/**
* @author 你的大龙猫啊
* @company www.com.hui
*/
/*
Switch案例
要点:case穿透 :在case语句体后不写break语句,将会出现case穿透
现象:当开始case穿透,后续的case就不会具有匹配效果,内部的语句都会执行直到看到break,或者整体switch语句执行完毕,才会结束
如果default写在前面 default也不会第一个执行,先执行case 有则执行case 再看有没有break 有则结束 没有则穿透 如果没有匹配再执行default 遇到break则结束 没有则出现穿透效果
*/
public class Expand05_Case {
public static void main(String[] args) {
int x = 3;
int y = 2;
switch (x){ //default后面不能写常量
default: //case没有则匹配default 虽然写在前面 但和写在哪没关系 但是不建议写在前面 一般写在最后面
y++;
System.out.println(y);
case 1:
y++;
System.out.println(y);
case 2:
y++;
System.out.println(y);
break;
case 5: //如果改成3会发生什么?这里没有break 会不会执行default? --不会,case不匹配才执行default
y++;
System.out.println(y);
}
}
}
/**
* @author 你的大龙猫啊
* @company www.com.hui
*/
public class Expand06_Switch {
public static void main(String[] args) {
String name ="你的大龙猫啊";
//JDK7的新特性,表达式结果可以是字符串!!!JDK5新特性,表达式结果可以是枚举类型(暂时用不到)
// 字符的本质还是数字
//反编译 java -- class(字节码文件) ----反编译(IDEA)
switch (name){
case "你的小龙猫":
System.out.println("小龙猫");
break;
case "你的大龙猫啊":
System.out.println("你的大龙猫啊");
break;
default:
System.out.println("嘿嘿嘿");
}
}
}
2.反编译拓展
复制目录到资源管理器打开(Windos +E)
用记事本打开是看不懂的
不要直接复制到项目里面去

对比java和.class的文件

本文深入探讨了JavaSE中Switch语句的拓展使用,包括case穿透现象及如何避免,同时介绍了JDK7中新特性——Switch接受字符串作为参数。此外,文章还讲解了如何通过反编译理解Java字节码,增强代码理解和调试能力。
8万+





