黑马程序员_高薪技术笔记
来源:互联网 发布:手机淘宝怎么实名认证 编辑:程序博客网 时间:2024/06/05 05:43
javaEE+android培训
1.java中几个重要的名词的简写:
javaEE简写:
ide:itegrity(集成) development environment
2.可变参数:(jdk1.5的新特性)
格式举例:add(int x,int y,int... args){
int sum=0;
for(int i=0;i<args.length;i++){
sum+=i;
}
return sum;
}
特点:args只能出现在参数列表的最后
"..."位于变量类型和变量名之间,前后有无空格都可以
调用可变参数的方法是,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数
3.增强for循环
语法:for(type 变量名:集合变量){...}
注意:迭代变量必须在()中定义;
集合变量可以是数组或者实现了Iterable接口的集合类
4.自动装箱与拆箱(jdk1.5的新特性)
Integer i1=1;Integer i2=1;:这个过程表示了自动装箱的过程
System.out.prrintln(i1+5):这个过程就体现了你自动拆箱的过程
原因:为什么要出现这种情况呢?因为他们的单位太小了,没有必要new出来好多的对象,所以就直接采用这个对象的引用;
这种设计模式叫做享元模式(flyewight)
注意:当Integer i1=137;Integer i2=137;这样是i1和i2就不相等了,原因是:在-128~127范围的时候,是比较小的数字,所以才有了享元的模式
5.反射
反射的基石:class
字节码:就是所有的.class文件在内存中的一个标识。类型是class类型
获取一个类的字节码的方式:一.内存中已经存在(即是:这个类被使用过在内存中存在),对象.getClass();例如:new Date().getClass()
二.内存中不存在,Class.forName("类名");Class.forName("java.lang.String")
三.类名.class;例如:System.class
九个预定义Class实例对象
参看Class.isPrimitive方法的帮助
int.class=integer.TYPE:int类的字节码对象是和包装类对象的TYPE是一样的
数组类型的Class实例对象
Class.isArray()
总之:只要是在源程序中出现的类型,都有各自的Class实例对象,例如int[],void...
小心得:编译时:只看代码的定义,不看代码的执行;
字节码的比较用“==”符号来比,不用equals()来比,因为假如是同一种类型都是同一分字节码
反射的作用:实现框架的功能
实例:见那个代码
泛型的反射应用:
泛型是给编译器用的,仅仅是见差语法规则是否出现了错误,这样的话,我们就可以利用反射来穿过编译器,实际上去操作一些与泛型中声明不一致的数据;(这还有一个说法:)
6.类加载器
BootStrap------>JRE/lib/rt.jar
ExtClassLoader-->JRE/lib/ext/*.jar
AppClassLoader-->CLASSPATH指定的所有jar或目录
模板方法设计模式
父类-->LoadClass
子类1(自己干)
子类2(自己干)
- 黑马程序员_高薪技术笔记
- 黑马程序员_高薪技术
- 黑马程序员_高薪技术_7
- 黑马程序员_高薪技术_9
- 黑马程序员_高薪技术(一)
- 黑马程序员_高薪技术(二)
- 黑马程序员_高薪技术(3)
- 黑马程序员_高薪技术一(java反射)
- 黑马程序员高薪_代理
- 黑马程序员----高薪技术(JavaBean)
- 黑马程序员--高薪技术--反射
- 黑马程序员高薪_类加载器
- 黑马程序员_高薪技术(注解和类加载器)_8
- 黑马程序员-java基础06高薪技术
- 黑马程序员-----高薪技术(反射)
- 黑马程序员_Java高薪技术1
- 黑马程序员_Java高薪技术2
- 黑马程序员----(笔记整理-------高薪课程一)
- 如何查看和清除Windows本地的DNS缓存内容
- iOS UINavigationController总结
- Axure RP是一个专业的快速原型设计工具
- firefox安装与调试firebug
- [Sparrow OS 设计文档连载(二)] User Guide
- 黑马程序员_高薪技术笔记
- Migrate the Metadata from sharepoint 2010 to sharepoint 2013
- 简单搜索集
- Android中的Loaders机制
- (转)Android代码截屏
- JQuery(三)——操作HTML和CSS内容
- matplotlib x轴时间显示
- 执行make menuconfig 出现错误
- MYSQL在dos下汉字乱码解决