黑马程序员_JDK新特性

------- android培训java培训、期待与您交流! ----------

静态导入

1.import语句可以导入一个类或某个包中的所有类

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


可变参数

可变参数的特点:

1.只能出现在参数列表的最后;

2. ...位于变量类型和变量名之间,前后有无空格都可以;

3.调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,

在方法体中以数组的形式访问可变参数。



增强for循环

(1) 语法:

for(type 变量名:集合变量名) {... }

(2)  注意事项

1.迭代变量必须在()中定义

2.集合变量可以是数组或实现了Iterable接口的集合类


基本数据类型的自动拆箱与装箱

(1) 自动装箱

    Integer  i  = 25;

(2) 自动拆箱

   System.out.println(i+30);

(3) 基本数据类型的对象缓存

(4) 享元模式(flyweight)

         享元模式以共享的方式高效的支持大量的细粒度对象。享元模式能做到共享的关键是区分内蕴状态和外蕴状态。内蕴状态存储在享元内部,不会随环境的改变而有所不同。外蕴状态是随环境的改变而改变的。外蕴状态不能影响内蕴状态,它们是相互独立的。将可以共享的状态和不可以共享的状态从常规类中区分开来,将不可以共享的状态从类里剔除出去。客户端不可以直接创建被共享的对象,而应当使用一个工厂对象负责创建被共享的对象。享元模式大幅度的降低内存中对象的数量。


枚举

枚举的基本应用


实现带有构造参数方法的枚举


实现带有抽象方法的枚举


反射

Java程序中的各个Java类属于同一类事物,描述这类事物的Java类名就是Class

如何获得字节码对应的实例对象(Class类型):


总之,只要是在源程序中出现的类型,都有各自的Class实例对象,如:int []  void

构造方法的反射应用:

成员变量的反射应用:


成员方法的反射应用: 

Method类代表某个类中的一个成员方法。  如果传递给Method对象的invoke()方法的第一个参数为null,说明Method对象对应的是一个静态方法。

对接收数组参数的成员方法进行反射:

  Method对象的参数如果是非基本类型数组时,会被拆分成多个对象,此时会抛出 IllegalArgumentException 异常。

   






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值