Java高新技术之myeclipse使用、静态导入、增强for、自动拆装箱、享元模式

---------------------- android培训、 java培训、期待与您交流! ----------------------
1.myeclipse模板代码配置

window->preferences

Java高新技术之myeclipse使用、静态导入、增强for、自动拆装箱、享元模式_第1张图片

2 jdk 5.0静态导入

import语句可以导入一个类或某个包中的所有类
import static语句导入一个类中的某个静态方法或所有静态方法
语法举例: 
import static java.lang.Math.sin;
import static java.lang.Math.*; 


3 增强for循环和可变参数

问题:一个方法接受的参数个数不固定,例如:
System.out.println(countScore(2,3,5));
System.out.println(countScore(1,2,3,5));
可变参数的特点:
只能出现在参数列表的最后;这个要记住
...位于变量类型和变量名之间,前后有无空格都可以;调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。

语法:for ( type 变量名:集合变量名 )  { … } 
注意事项:

  • 迭代变量必须在( )中定义!
  • 集合变量可以是数组或实现了Iterable接口的集合类

举例: 
public static int add(int x,int ...args) {
int sum = x;
for(int arg:args) {
sum += arg;
}
return sum;
}


4.自动拆装箱与享元模式(jdk5.0中)

自动装箱:Integer num1 = 12;
自动拆箱:System.out.println(num1 + 12);
基本数据类型的对象缓存:
Integer num1 = 12;
Integer num2 = 12; 这块相等,-128<=num<=127都是真的(这里用了享元模式 flyweight)
System.out.println(num1 == num2);

Integer num3 = 129;                这块不相等,因为是对象
Integer num4 = 129;
System.out.println(num3 == num4);//false


Integer num5 = Integer.valueOf(12);
Integer num6 = Integer.valueOf(12)  ;   
System.out.println(num5 == num6);//true

PS:在String类中也采用了享元设计模式:String  s1="abc" ;  String s2="abc"; 也采用了享元设计模式 s1和s2两个不同引用变量指向了同一对象。


你可能感兴趣的:(java,设计模式,MyEclipse,String,Integer,import)