1、Java数组声明
曾经一直以为数组声明只有String[] s1;这种格式,但还有另一种格式:String s2[],这两种格式效果是一样的,只是java语法糖的作用效果。如下两种数组声明格式:
String[] s1 = { "1", "2" };
String s2[] = { "1", "2" };
使用javap查看生成的字节码是一样的:
public static void main(java.lang.String[]) throws java.lang.Exception;
Code:
Stack=4, Locals=3, Args_size=1
0: iconst_2
1: anewarray #2; //class java/lang/String
4: dup
5: iconst_0
6: ldc #3; //String 1
8: aastore
9: dup
10: iconst_1
11: ldc #4; //String 2
13: aastore
14: astore_1
15: iconst_2
16: anewarray #2; //class java/lang/String
19: dup
20: iconst_0
21: ldc #3; //String 1
23: aastore
24: dup
25: iconst_1
26: ldc #4; //String 2
28: aastore
29: astore_2
30: return
LineNumberTable:
line 20: 0
line 21: 15
line 22: 30
Exceptions:
throws java.lang.Exception
}
2、Java泛型的本质
曾经以为Java泛型跟C#泛型一样...
C#泛型在类在编译时,先生成中间代码IL,通用类型T只是一个占位符。在实例化类时,根据用户指定的数据类
型代替T并由即时编译器(JIT)生成本地代码,这个本地代码中已经使用了实际的数据类型,等同于用实际类型写的类。C#里面的泛型无论是在程序的源代码
中、编译后的IL中、还是运行时的CLR中都是切实存在的,List<Integer>与List<String>就是两个不同的泛型,它们在系统运行期生成,有自己的虚方法表和类型数据,这种实现称为类型膨胀,是真实的泛型。
但Java中的泛型不一样,它只在程序源代码中存在,编译后的字节码文件中已经已经被替换为原生类型,并且根据需要在相应的地方加入的强制类型转换,因此对
于Java来说,List<Integer>与List<String>实现上是同一个类型,经过编译后都成为List类型,所
以说Java语言的泛型就是种语法糖,Java的泛型实现为类型擦除,为伪泛型。
3、SQL_NO_CACHE
之前一直以为SQL_NO_CACHE是查询不走缓存,但并非如此,不是查询结果不从缓存里取,
而是查询的结果不放到缓存里,下面是MySQL文档(5.0,5.1,5.5都一样):
8.6.3.2. Query Cache SELECT Options
Two query cache-related options may be specified in SELECT statements:
SQL_CACHE
The query result is cached if it is cacheable and the value of the query_cache_type system variable is ON or DEMAND.
SQL_NO_CACHE
The query result is not cached.
Examples:
SELECT SQL_CACHE id, name FROM customer;
SELECT SQL_NO_CACHE id, name FROM customer;
分享到:
相关推荐
写此文使我很为难,一是担心读者误以为我轻浮得现在就开始写自传,二是担心朋友们误以为我得了绝症而早早留下遗作。 不论是落俗套还是不落俗套地评价,我在大学十年里都是出类拔萃的好学生。并且一直以来我对朋友们...
这篇文档实际上是由两篇文章组成,标题“原来你一直在我身旁.doc”可能是指文档包含的两个故事的主题相似,即关于陪伴和发现身边人的价值。虽然标签为“资料”,但内容更像是个人的情感叙述,而非传统的IT知识。 第...
GDPS-Bot 我一直在研究的GDPS机器人,计划在不久的将来实现更多功能这个GDPS Bot是做什么的? 该GDPS Bot当前有2个主要命令轮廓等级这些命令从GDPS中获取信息,并以不和谐的形式显示它们,如下例所示设置首先,您...
一直以为是我后台程序有问题,晚上回到家才想起来ajax的问题,把ajax的异步处理改为同步,就出来效果了,具体的原因请看下文详解。 jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是...
初入大学时,我曾以为可以摆脱高中的压力,享受自由的生活,但很快意识到大学并不意味着松懈,而是需要更专注、更自主的学习。因此,我调整了自己的态度,开始积极参与课堂,课后主动复习和查阅资料,这极大地提高了...
写此文使我很为难,一是担心读者误以为我轻浮得现在就开始写自传,二是担心朋友们误以为我得了绝症而早早留下遗作。 不论是落俗套还是不落俗套地评价,我在大学十年里都是出类拔萃的好学生。并且一直以来我对朋友们...
有些时候你精通一门语言,但是会发现你其实整天在和其它语言打交道,也许你以为这些微不足道,不至于影响你的开发进度,但恰恰是这些你不重视的东西会浪费你很多时间,我一直以为我早在几年前就已经精通JavaScript了...
【标题】:“一直在路上PPT模板.ppt”可能是一个个人成长或职业发展的主题演讲稿,通过“一直在路上”的比喻,表达了作者对人生旅途的探索与坚持。这个标题和描述暗示了PPT的内容可能会涵盖个人经历、挑战、目标设定...
我的专业背景是**电力工业学校,自**年起,我一直在供电领域从事相关工作,积累了丰富的实践经验。在农网改造办公室工作的时期,我面对挑战,克服困难,圆满完成了各项任务。后来,我转任供电所微机员,负责多项关键...
文章进一步探讨了和好的幻想与现实的对比,那些想象中的甜蜜重逢,在现实中可能变成擦肩而过的陌生人。这样的场景让人感慨万千,既是对美好过去的怀念,也是对现状的无奈接受。 随着时间的流逝,曾经的爱人可能已经...
以前看到IAR可以做 linux内核也可以做,一直以为是一个未解之谜,比如一个数组ARR[10]注意的话,你以后在每个模块.C.H用的时候用ARR[1] ARR[4]是不能在空白地方作为全局变量的 必须在函数内部 而 我们需要的是在空白...
描述中提到,“原来一直以为没有呢,最近找到资源,就下载看看,我在用,请放心使用”,这表明用户发现并使用了一款适用于Mac的Redis客户端软件,并且对其可用性表示了肯定。提供的压缩包文件名为“redis-desktop-...
我一直以为f5g是5g无线网,原来是GPON网络,遥遥领先同行
前几天偶然看见一个人脸识别的...其次,我在最开始一直没弄懂这个”name”到底应该填什么,上传功能不好用我一直觉得是”name”的原因,官方对于name给的解释很迷,这里我就给个结论,大家不要纠结这个属性,直接写file
我原来一直以为《代码大全》是以分析代码为内容,所以虽然以前数次看到了这本书,均没有理睬,直到前2个月我翻开了这本书略读了一下,结果让我后悔不已,我该早读这本书的。如果这本书名不是“代码大全”,而是...
解压后有170多M,太大了,一直以为压缩后也少不了多少,所以一直没有上传,结果今天压缩了一下只有40多M,分割成每个18M,生成了三个文件,把三个都下载完后,放在同一个目录下解压其中的一就可以了。 好东西当然要...
Git教程,基本上是我最近收集的全部资料了,我个人觉得看了还是挺有帮助的,前段时间一直找WOW服务端ANT的源代码,以为用SVN,结果搞了半天才发现最醒目的那个GIT是版本控制。。。无语中,刚接触感觉无从下手,好在...
解压后有170多M,太大了,一直以为压缩后也少不了多少,所以一直没有上传,结果今天压缩了一下只有40多M,分割成每个18M,生成了三个文件,把三个都下载完后,放在同一个目录下解压其中的一就可以了。 好东西当然要...
### 基于Linux2.6下的按键驱动开发步骤 #### 概述 在Linux2.6内核环境下,开发一个按键驱动程序是一项常见的任务,尤其是对于嵌入式系统开发者而言。本文将详细介绍如何在Linux2.6内核下开发一个简单的按键驱动,...
我一直顺风顺水,这曾经是我引以为傲的事情。但现在,这成为了一种负担,让我陷入困境。我意识到,也许我需要经历更多的挫折,通过不断的尝试来找到属于自己的定位。这是一个艰难的决定,但也是成长的一部分。 在我...