1 工具常用的快捷键
  1)
Eclipse和MyEclipse,IBM,2001,Java编写,开源,跨平台跨语言
  2)Alt+/快速内容提示(自己习惯定义)
  3)Ctrl+1快速修补错误
 
4)Syso+Alt+/快速显示System.out.println()语句 
  5)Ctrl+Shift+F快速排版正确代码
  6)Ctrl+Shift+X转大写,Ctrl+Shift+Y转小写
  7)Ctrl+Shift+O一次性导入多个包
  8)Ctrl+/加或减单行注释
  9)
Ctrl+Shift+/加多行注释,Ctrl+Shift+\取消多行注释
 10) 选中行+Alt+上下光标键移动行

2 使用断点调试程序,使用Junit测试程序
  1)通过断点方式调式程序的每个步骤  
  2)Step over查看代码粗粒度执行过程
  3)Step into查看代码细粒度执行过程
  4)@Before和@After会在@Test方法执行前后各执行一次
  5)@BeforeClass和@AfterClass是在类前后各执行一次
  
*3 静态导入和自动装拆箱
  1)静态导入可以导入对象,属性,方法,*
  2)语法:
import static java.lang.Math.PI;
import static java.lang.Math.pow;
import static java.lang.System.out;
  3)在JDK5中,编译器自动将基本类型和对应的包装类型,自动转换
 
例如:int<->Integer

*4 增强for循环(foreach)
  1)循环迭代数组/List/Set/Map集合
     List:
 List list = new ArrayList();
list.add("jack");
list.add("marry");
list.add("sisi");
for(String name : list){
System.out.print(name+"\t");
}
     Set:
  Set set = new HashSet();
set.add(100);
set.add(200);
set.add(300);
Iterator it = set.iterator();//Iterator为迭代器
while(it.hasNext()){
Integer key = it.next();
System.out.print(key+"\t");
}
  2)对Map集合的二种迭代方式:
a)keySet()
     
     Map map =
new HashMap(); 
 map.put(100,"jack"); 
 map.put(200,"marry"); 
 map.put(300,"sisi"); 
 Set set = map.keySet();
 Iterator it =
set.iterator(); 
 while(it.hasNext()){ 
 Integer key = it.next();
  String value =
map.get(key); 
  System.out.println(key+"-"+value); }
b)entrySet()
Map map = new HashMap(); 
 map.put(100,"jack"); 
 map.put(200,"marry"); 
 map.put(300,"sisi"); 
 Set> set = map.entrySet();
Iterator> it =
set.iterator();
 while(it.hasNext()){ 
Entry entry = it.next();
  Integer key =
entry.getKey();
  String value =
entry.getValue();
System.out.println(key+"<->"+value);}
 
3)在迭代集合时,一定要动态通知Iterator,而不要动态通知List集合,应选用ListIterator。
ListIterator it = list.listIterator();
*5 可变参数
  1)参数的个数不确定的
  2)可变参数只能放置在参数的最后,即最右边
  3)可变参数最少0个,最多1个
  4)编译器将可变参数当作一个一维数组来对待

*6 枚举
  1)当取值是某范围中的之一,这时可以使用枚举
  2)当向用户提示严重的错误时,尽可以使用抛异常的方式通知客户端
  3)可以对枚举在运行时验证 
  4)可以对枚举在编译时验证
  5)枚举值相当于实例变量 
 
6)枚举类与普通一致,可以继承或实现,如果有抽像方法的话,可以利用每个枚举值以匿名内部类的方式去实现
  7)枚举值可以用在switch()语句中
  8)枚举类常用方法如下:
a)name():显示枚举值
b)ordinal():显示枚举值对应的索引,从0开始
c)values():取得该枚举类对应的所有枚举值,是一个数组
d)valueOf():判段某个字符串是否属性枚举值之一

*7 反射
  1)解析一个类的各个部分,形成一个对象。
 
2)外存中的类,加载到内存中,会形成该对象的Class类,例如:String类,加载到内存中,就是StringClass对象。
  3)使用不同的方式,取得同一个类型的字节码对象Class是相同的。
     
类名.class Class c1 = String.class;
 
     
对象.getClass()   Class c2 =
new String().getClass();
     
  Class.forName() Class c3 =
Class.forName("java.lang.String");
  4)通过getXxxxx()只能取得该类public的类型
   
通过getDeclaredXxxxxx()可以取得该类非public的类型
   
设置非public类型的可访问性,默认为false,不可访问
     
c.setAccessible(true); 
  5)反射可以反射private/public的构造方法,字段,普通方法
  6)在反射main方法时,编译器会将数组自动拆分,取第一个值
    解决方案:
//m.invoke(null,(Object)new
String[]{"A","B","C","D"});,将数组当作对象,此时编译器不进行拆分
m.invoke(null,new Object[]{new
String[]{"A1","B1","C1","D1"}});在数组中嵌入另一个数组

 7.总步骤
   
①取得Person类对应的字节码对象Class
    Class clazz =
Class.forName("cn.itcast.java.reflect.Person");
    ②取得该类的唯一构造方法
     
//Constructor c  =
clazz.getConstructor(null);
   
 //Constructor c =
clazz.getConstructor(String.class,int.class);
     
Constructor c = clazz.getDeclaredConstructor(null);
   
 ③创建实例
//Person p = (Person) c.newInstance(null);
     
  //Person p = (Person)
c.newInstance("berry",10);
     ④
设置非public成员的访问性,默认false即不可访问性
     
   c.setAccessible(true);
   
 ⑤ 执行方法
 p.show();

JAVA-WEB总结01的更多相关文章

  1. 【jframe】Java Web应用程序框架 - 第01篇:Get Started

    jframe是什么? jframe是一个基于MIT协议开源的java web应用程序框架,汇聚了我们团队之于java web应用程序的核心架构思想以及大量最佳实践,并且持续在实际项目中不断完善优化. ...

  2. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第6章.蜂巢

    第6章--蜂巢 蜂巢简介 网站开发完,就需要测试.部署.在服务器上运行. 网易蜂巢: 采用Docker容器化技术的云计算平台 https://c.163.com 容器管理:容器可被视作为云主机的服务器 ...

  3. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第4章.Maven

    第4章--Maven Maven实战 Java Web应用的部署: 手动式: 编译:javac -cp $CATALINA_HOME/lib/servlet-api.jar web-inf/class ...

  4. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第3章.Tomcat

    第3章--Tomcat Tomcat安装与运行 Tomcat:目前最常用的基于java的web应用服务器 本课程中所有的Java代码最终都需要部署到Tomcat中运行 Tomcat的配置文件是XML的 ...

  5. [原创]java WEB学习笔记01:javaWeb之tomcat的安装和配置

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  6. java web后台开发SSM框架(Spring+SpringMVC+MyBaitis)搭建与优化

    一.ssm框架搭建 1.1创建项目 新建项目后规划好各层的包. 1.2导入包 搭建SSM框架所需包百度云链接:http://pan.baidu.com/s/1cvKjL0 1.3整合spring与my ...

  7. Java Web开发中MVC设计模式简介

    一.有关Java Web与MVC设计模式 学习过基本Java Web开发的人都已经了解了如何编写基本的Servlet,如何编写jsp及如何更新浏览器中显示的内容.但是我们之前自己编写的应用一般存在无条 ...

  8. 【原创】三分钟教你学会MVC框架——基于java web开发(2)

    没想到我的上一篇博客有这么多人看,还有几位看完之后给我留言加油,不胜感激,备受鼓励,啥都别说了,继续系列文章之第二篇.(如果没看过我第一篇博客的朋友,可以到我的主页上先浏览完再看这篇文章,以免上下文对 ...

  9. Java Web之JSP技术

    JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比htm ...

  10. java web(四)文件上传与下载

     一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...

随机推荐

  1. 【243】◀▶IEW-Unit08

    Unit 8 Environment I. 不定式(to do)在雅思写作中的运用 1)名词 • 主语(句首) To protect the environment is everyone's dut ...

  2. sparse matrix format

    see Spare Matrix wikipedia item, and scipy's documentation on different choices of sparse matrix typ ...

  3. MySQL Horizontal Scaling

    http://www.tuicool.com/articles/miuq63E http://www.guokr.com/blog/475765/ http://songwie.com/article ...

  4. win10 ObservableCollection 排序自动收缩问题

    ObservableCollection本身是没有排序Sort功能的,不过我们可以通过冒泡排序来实现,以下是扩展功能: public static void Sort<T>(this Ob ...

  5. ZOJ 2671 Cryptography 矩阵乘法+线段树

    B - Cryptography Time Limit:5000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu Subm ...

  6. 第一个PyQuery小demo

    1.打开网址https://www.v2ex.com/,查看其源码. 2.打开PyCharm编译器,新建工程c3-11,新建python file,命名为v2ex.py,同时,新建file,命名为v2 ...

  7. Halcon - 数据类型

    这里给大家分享 Halcon 的数据类型结构图,方便初学者认知 Halcon 图1 Halcon Datatype

  8. Python:关于subprocess.stdout.read()导致程序死锁的问题

    subprocess.stdout.read()导致程序死锁的问题解决 今天有位老哥联系我说,在我的python之路系列中,解决粘包问题那一章的代码有BUG 这里当运行命令过于庞大的时候,会导致程序直 ...

  9. 安卓下点击a标签不跳转;点击a标签在手机真机上会调出手机键盘的解决办法

    安卓下点击a标签不跳转的解决办法,是不用href做跳转的链接,改为用JS控制跳转 <a href="javascript:;" ontouchstart="wind ...

  10. JavaScript进阶 - 第9章 DOM对象,控制HTML元素

    第9章 DOM对象,控制HTML元素 9-1 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属 ...