反射:就是把java类中的各种成分映射成相应的java类。每个类中的方法,包,成员变量等各个成分都可以对应的java类实例对象来表示。
枚举的作用:用于声明一组命名的常数。每种枚举类型均有一种基础类型,此基础类型可以使除char类型以外的任何整型。便于维护,易读,统一编译。
自动装箱:解析为 Integer num = new Integer(10);以上就是一个很好的体现,因为10是属于基本数据类型的,原则上它是不能直接赋值给一个对象Integer的,但jdk1.5后你就可以进行这样的声明,这就是自动装箱的魅力 自动将基本数据类型转化为对应的封装类型。成为一个对象以后就可以调用对象所声明的所有的方法自动拆箱:故名思议就是将对象重新转化为基本数据类型: //装箱 Integer num = 10; //拆箱 int num1 = num;在自动装箱时对于值从–128到127之间的值,它们被装箱为Integer对象后,会存在内存中被重用,始终只存在一个对象 而如果超过了从–128到127之间的值,被装箱后的Integer对象并不会被重用,即相当于每次装箱时都新建一个 Integer对象装箱:从基本类型转换成Object类型,称之为装箱;***拆箱:从Object转换乘基本类型的操作,称之为拆箱。 这个操作在反射过程中用的比较的多。 装箱:在堆中建立一个Object实例,把你指定的值复制成去;***拆箱:判别引用指向的堆中信息是否是要拆成的类型,是取出堆中值送给栈中变量,否则报异常
求一百以内的素数 public class FindPrime { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int num = 100; String s = "100以内的素数:"; for (int i = 1; i <= num; i++) { int count = 0; for (int j = 1; j <= (int) Math.sqrt(i); j++) { if (i % j == 0) count++; } if (count > 1) s += ""; else s += i + " "; } System.out.println(s); } //result //100以内的素数:1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 }