javaweb笔记大全

上传人:cn****1 文档编号:512269575 上传时间:2024-03-09 格式:DOC 页数:76 大小:516KB
返回 下载 相关 举报
javaweb笔记大全_第1页
第1页 / 共76页
javaweb笔记大全_第2页
第2页 / 共76页
javaweb笔记大全_第3页
第3页 / 共76页
javaweb笔记大全_第4页
第4页 / 共76页
javaweb笔记大全_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《javaweb笔记大全》由会员分享,可在线阅读,更多相关《javaweb笔记大全(76页珍藏版)》请在金锄头文库上搜索。

1、wordjava web笔记大全Lesson 1一、eclipse工具的使用1. java代码的位置1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格2) 新建一个java 工程(Project)3) 建包建类2. 快捷键alt + / :代码自动补齐,需要配置的打开preferences(首选项), 搜keys,打开快捷键配置面板搜 alt+/ ,取消绑定搜 content assist ,取消原先的绑定,配置成alt+/ctrl+1: 错误自动修复,注意,放行的红叉是可修复的,圆形的是不可修复的导包的三种方式:1将类名敲完整,按下alt+/ 进展补齐,

2、会自动导包2) ctrl+1,修正错误3) ctrl+shift+o 整理包,导入需要的包,去掉多余的导包语句ctrl+shift+f : 代码格式化ctrl+2,L自动声明变量shift+enter光标直接进入下一行ctrl+alt+方向键(向上向下) 复制行alt+ 方向键(向上向下) 移动当前行3. 断点调试1)可以对程序进展调试在行的开头双击左键打断点,用debug方式来运行程序,程序就会停留在断点位置F5 跳入(step into) 跳入方法内部 F6 跳过,让当前行运行 F7跳出返回上一层程序resume 直接运行到下一个断点2) 查看源代码建议使用断点调试的方式,注意当前运行环境

3、需要包含源码4. junit单元测试1) 写一个java类,声明测试方式修饰符为 public void ,在方法前面加注解,(Test) 此方法就可以进展测试了(交给junit运行)2) 需要在测试方法前做初始化工作写一个静态方法 public static void init() 在方法前加注解 BeforeClass3) 需要在测试后释放资源写一个静态方法在方法前加注解 AfterClass二、jdk5新特性1. 静态导入1) 导入类的静态属性importstatic java.lang.System.out;out.println(haha);2) 导入类的静态方法import sta

4、tic java.lang.Math.*;/ 导入Math类的所有静态成员int num = abs(-10);2. 增强for循环1) 作用:对存储对象的容器进展迭代 2) jdk5以前怎么迭代3) 增强for循环迭代数组String arr = a, b, c;/数组的静态定义方式,只试用于数组首次定义的时候/ 传统方式for(int i=0; i Integerbyte - Byteshort - Shortlong - Longchar - Characterdouble - Doublefloat - Floatboolean - Boolean1) Integer x = 1; x

5、 = x + 1; 经历了什么过程?装箱拆箱装箱2) 为了优化,虚拟机为包装类提供了缓冲池, Integer池的大小 -128127 一个字节的大小3) String池Java为了优化字符串操作 提供了一个缓冲池 面试题:String s = “abc 和 String s = new String(“abc) 的区别String s = new String(“abc) 创建了几个对象 String s = “a + “b + “c + “d 创建了几个对象String s1 = “a String s2 = “b String s3 = s1 + s2; s3=ab?/*1. String

6、 s = abc,虚拟机首先会检查String池里有没有abc对象(通过equals方法)/ 如果有,直接返回引用,如果没有,会在池里创建一个“abc对象,并返回引用String s1 = abc;String s2 = abc;System.out.println(s1=s2);/ result: true*/* 2. String str = new String(abc); 不管缓冲池是否有abc, 都会在堆内存创建一个abc对象,返回引用/ 此时,负责检查并维护缓冲池,其实堆内存的对象是缓冲池中abc对象的一个拷贝String s1 = new String(abc);String s

7、2 = new String(abc);System.out.println(s1=s2); / result: false*/* 3. String s = a + b + c + d; java编译器有个合并量的优化功能/ 在编译阶段就把a + b + c + d 合并为 abcd“String s = a + b + c + d; /String s = abcd; System.out.println(s=abcd);/ result: true*/* 4. String s1 = a; String s2 = b; String s3 = s1 + s2;/ String是常量,不能

8、相加的,java如何实现的? StringBuilder sb = new StringBuidler(s1); sb.append(s2); s3 = sb.toString();也就是说实际上s3是方法返回的String对象但凡方法返回的字符串对象都是在堆内存的*/ String s1 = a; String s2 = b; String s3 = s1 + s2;/ 堆内存的对象 System.out.println(s3=ab);/ result: false4) 单列集合 CollectionList list = new ArrayList();list.add(aaa);list

9、.add(bbb);list.add(ccc);/ 传统方式1/* 1.获得迭代器Iterator iter = list.iterator();/ 2.循环判断迭代器是否有下一个while(iter.hasNext() String str = (String) iter.next();/ 将迭代器的指针移向下一个,并将迭代当前指向的元素返回System.out.println(str);*/ 传统方式2for(Iterator iter=list.iterator(); iter.hasNext(); ) String s = (String) iter.next();System.out

10、.println(s);System.out.println(-);/ 增强for循环, 没有使用泛型的集合能不能使用增强for循环迭代?能for(Object obj : list) String s = (String) obj;System.out.println(s);5) 双列集合 MapMap map = new HashMap();map.put(a, aaa);map.put(b, bbb);map.put(c, ccc);/ 传统方式迭代1/ 1. 获得所有的keySet keys = map.keySet();/ 2.迭代keys获得所有的keyIterator iter

11、= keys.iterator();while(iter.hasNext() String key = (String) iter.next();/ a b c/ 3.根据key获得对应的valueString value = (String) map.get(key);System.out.println(key + = + value);System.out.println(-);/ 传统方式2,必须掌握这种方式/ 1.获得所有的键值对Entry对象Set entrys = map.entrySet();/ 2.迭代出所有的entryiter = entrys.iterator();whi

12、le(iter.hasNext() Map.Entry entry = (Entry) iter.next();/ 分别获得key和valueString key = (String) entry.getKey();String value = (String) entry.getValue();System.out.println(key + = + value);System.out.println(-);System.out.println(增强for循环迭代,);/ 增强for循环迭代,/ 原如此上map集合是无法使用增强for循环来迭代的,/ 因为增强for循环只能针对实现了Iter

13、able接口的集合进展迭代/ Iterable是jdk5中新定义的接口,就一个方法iterator方法/ 只有实现了Iterable接口的类,才能保证一定有iterator方法/ java有这样的限定是因为增强for循环内部还是用迭代器实现的/ 而实际上,我们可以通过某种方式来使用增强for循环for(Object obj : map.entrySet() / obj 依次表示EntryMap.Entry entry = (Entry) obj;System.out.println(entry.getKey() + = + entry.getValue();6集合迭代注意问题/ 在使用迭代器迭代集合的过程中,不能对集合进展增删操作Testp

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号