A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Dale 中级黑马   /  2014-9-15 10:10  /  1953 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1)静态导入:

import static 语句导入一个类中的某个静态方法或所有静态方法。

2)可变参数:

可变参数特点:只能出现在参数列表的最后。


3)增强for循环:

格式: for(type 变量名:集合变量名){}
增强for循环有局限性,必须有被遍历的对象。就像三元运算符必须有结果一样,一般简单意味有局限性。

4)享元设计模式:

享元设计模式:
享元模式通过共享实现对象的重用。
优点:提高程序效率和性能的模式,会大大的增加程序的运行速度。极大的减少了内存中,对象
的数量,使得相同对象在内存中只保存一份。

5)枚举:

JDK1.5新特性。

枚举的好处:

1),定义常量:

  1: public enum TrificLamp{
  2:    RED,GREEN,YELLOW;
  3: }
2)可以设计单利,枚举的每个元素都是其对象;

6)反射:

反射就是将java中的各个成分通过类的形式进行操作。

操作类用Class类,操作方法用Method类,操作成员变量用Filed类,操作构造函数用Constructor类
当成员被私有时,还能通过暴力反射进行访问和操作,filed.setAccessible(true)

数组的反射:
基本类型的一维数组可以被当作Object类型使用,不能当作Object[]类型使用;
具有相同维数和元素类型的数组属于同一个类型,即具有相同的Class实例对象
非基本类型的一维数组,即可以当作Object类型使用也可以当作Object[]类型使用。
Arrays.asList()处理int类型数组和String类型数组的差异。
int用System.out.print()打印的还是地址。而String可以打印对象的属性值。
Array工具类用于完成对数组的反射操作

不能修改HashSet集合中参与了hashCode计算的元素的值,否则就会会出现无法删除该元素的情况,会造成内存泄漏。

例子:

  1: public static void main(String[] args) {
  2: Set<Person> set = new HashSet<Person>();
  3: Person p1 = new Person("张三",20);
  4: Person p2 = new Person("李四",21);
  5: Person p3 = new Person("王五",22);
  6: set.add(p1);
  7: set.add(p2);
  8: set.add(p3);
  9:
10: p3.setAge(2); //修改p3的年龄
11: set.remove(p3); //无法删除
12:

12),反射的作用――>实现框架功能:
工具类和框架的区别:工具类是被用户所调用,而框架则是调用用户提供的类。

7)内省:

1,什么是JavaBean:
JavaBean是一种特殊类,主要用于传递信息,这种Java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。
2,JavaBean的属性:

JavaBean的属性是根据其中的set和get方法来确定的,而不是根据其中的成员变量,去掉set和get后的名称就是属性名。如果剩余部分的第二个字母是小写,则把剩余部分的首字母改成小写。
例子: setName()的属性名->name
isOpen()的属性名->Open
setAGE()的属性名->AGE
getAGE()的属性名->AGE
总之:一个类被当作JavaBean使用时,JavaBean的属性是根据方法名判断出来的。

一个符合JavaBean的特点的类可以当作普通类一样进行使用。但作为javabean处理有好处:
JDK中提供了对JavaBean进行操作的一些API,这套API就称为内省,如果通过getX方法来访问私有
的x,有一定难度,用内省操作JavaBean就变得很方便。

4 个回复

倒序浏览
收藏了,虽然还没有学到 不过知道下大概框架
回复 使用道具 举报
楼主有没有类加载器动态代理之类的。
回复 使用道具 举报
没总结完啊,还会继续?
回复 使用道具 举报
还没学到  感谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马