黑马程序员-高新技术(eclipse使用、增强for循环、自动拆装箱等)

来源:互联网 发布:做网络棋牌平台赚钱吗 编辑:程序博客网 时间:2024/04/28 10:19

-----------android培训java培训、java学习型技术博客、期待与您交流! ------------


一、eclipse开发工具简述


1、概述:



(1)eclipse是运行在java基础上的工具。

(2)名词:

1)IDE:ItegrityDevelopment Enviroment,集成开发环境
2)JavaEE:javaEnterprise Edition:java企业版开发工具。
3)JMS:Java MessageService,Java消息服务,是一个Java平台中关于面向消息中间件的API,用于在两个应用程序间,或分布式系统中,发送消息,进行异步通信。
4)JMX:Java ManagementExtensions,Java管理扩展;是一个为应用程序、设备、系统植入管理功能的框架。
5)JNDI:Java Nameingand Directory Interface:Java命名和目录接口。
6)JDBC:Java DataBase Connectivity:Java数据库连接。

(3)Myeclipse和eclipse的区别:

1)Myeclipse:是elipse的插件,用于开发javaEE的平台,为其打补丁,扩展其功能,可以开发JavaEE程序即web项目,但是现在Myeclipse也集成了eclipse的功能,可直接使用Myeclipse。
2)eclipse:是开发java的一款专业的IDE(集成开发环境),以前需要Myeclipse才能开发JavaEE程序,现在的eclipse的版本也可以不用再安装Myeclipse插件,直接可以开发JavaEE项目。

2、eclipse开发工具介绍:


(1)project(工程):


1)一个工程包含有:包,jar包,资源文件,java源文件等内容。
2)将一个工程的所有源文件用一个工程来组织,开发工具能对所有源文件集中管理,记住每个源文件的位置和相互关系,配置信息等都在工程中有记录。

(2)preferences(首选项):

在workspace(工作间)中配置,将会影响到它下面所有的工程,一个工作间包含多个工程,不同透视图就是几个小窗口的集合。

(3)在eclipse下如何查看变量值:

在变量处打个断点--->Debug透视图,调试运行--->选中变量,右键选watch(观察),就可以看到了。

(4)perspective(透视图)和view(视图)的关系:

view:每一个小窗口就是一个视图。可通过window下的show view调出相应的视图。
perspective:透视图就是若干个小窗口的集合。

(5)导入已有工程:

1)将其他工作间中的工程拷贝到当前工作间所在的文件夹下。
2)在eclipse中右击工程--->导入--->浏览选择当前工作间目录下拷贝过来的工程。

(6)配置JDK环境:

右击工程--->BuildPath --->Libraries(库)--->移除导入的工程的JDK库,增加自己的库。

注:

Add JARs是增加打个Jar包,
如果Jar包不在当前工程文件夹中,用Add Exernd JARs
如果Jar包在当前工程文件夹中,用Add JARs
增加一个库相当于增加很多Jar,这是一个打包的过程。

二、静态导入


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

三、可变参数


1、问题:


一个方法接受的参数个数不固定,例如
System.out.println(add(2,3,5));
System.out.println(add(2,3,5,6,8));

2、可变参数的特点:


(1)只能出现在参数列表的最后。
(2)...位于变量类型和变量名之间,前后无空格都可以。
(3)调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数。

代码示例:

class Demo{public static void main(String[] args) { System.out.println(add(2,3,5));     //10 System.out.println(add(2,3,5,6,8)); //24}public static int add(int x,int... args){int sum = x;for(int i=0;i<args.length;i++)sum += args[i];return sum;}}

四、增强for循环


1、语法:


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


2、注意事项:


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

代码示例:

class  Demo{    public static void main(String[] args) {         System.out.println(add(2,70,5));        //77        System.out.println(add(2,32,51,62,8));  //155    }    public static int add(int x,int... args){        int sum = x;        for(int arg : args)            sum += arg;        return sum;    }}

五、基本数据的自动拆装箱


自动装箱:Integer num1 = 12;
自动拆箱:System.out.println(num1 + 13);

基本数据类型的对象缓存:
Integer num1 = 12;
Integer num2 = 12;
Systrm.out.println(num1==num2);

Integer num3 = 129;
Integer num4 = 129;
Systrm.out.println(num3==num4);

Integer num5 = Integer.valueOf(12);
Integer num6 = Integer.valueOf(12);
Systrm.out.println(num5==num6);


六、享元设计模式(flyweight):


1、概念:


很多很小的对象,他们的属性相同,那么就可变为一个对象来使用,这些相同属性称为内部状态,还有很多不同的属性,把他们作为参数传入,这些称为外部状态。这样优化了内存的方式,叫做享元设计模式。

2、应用:


如:(char ,x , y)  如果char是很小的对象,x,y是外部状态。就可以用享元模式。
图标:window下的文件夹图标,只有名称属性不同,其他很多相同的属性,那么可以用享元设计模式

代码示例:

class  Demo{    public static void main(String[] args) {         Integer iObj = 3;        System.out.println(iObj + 5);  //8        String s1 = new String("abc");        String s2 = new String("abc");        System.out.println(s1==s2); //false        Integer i1 = 13;        Integer i2 = 13;        Integer i3 = 137;        Integer i4 = 137;        System.out.println(i1==i2); //true        System.out.println(i3==i4); //false        Integer i5 = Integer.valueOf(12);        Integer i6 = Integer.valueOf(12);        System.out.println(i5==i6); //true    }}


原创粉丝点击