1、前言《JVM学习.01内存模型》篇讲述了JVM的内存布局,其中每个区域是作用,以及创建实例对象的时候内存区域的工作流程。上文还讲到了关于对象存货后,会被回收清理的过程。今天这里就着重讲一下对象实例是如何被清理回收的,以及清理回收的几种算法。2、再谈引用JDK1.2版本之后,对引用的概念进行了扩充,分为强引用,软引用,弱引用,虚引用。这4种引用关系强度依次减弱。2.1、StronglyReference强引用强应用是最传统的”引用“定义。这种引用关系,无论任何情况(包括OOM异常),只要强引用关系还存在,GC就不会回收掉被引用对象。声明方式:Objectobject=newObject();
正则表达式025.4正则表达式语法025.4.6捕获分组详见5.3.3例子packageli.regexp;importjava.util.regex.Matcher;importjava.util.regex.Pattern;//演示分组publicclassRegExp07{publicstaticvoidmain(String[]args){Stringcontent="hanshunpings7789nn1189han";//下面就是非命名分组//说明//matcher.group(0)是不加括号匹配到的字符串//matcher.group(1)是不加括号匹配到的字符串的第一个分组的内
正则表达式025.4正则表达式语法025.4.6捕获分组详见5.3.3例子packageli.regexp;importjava.util.regex.Matcher;importjava.util.regex.Pattern;//演示分组publicclassRegExp07{publicstaticvoidmain(String[]args){Stringcontent="hanshunpings7789nn1189han";//下面就是非命名分组//说明//matcher.group(0)是不加括号匹配到的字符串//matcher.group(1)是不加括号匹配到的字符串的第一个分组的内
实现023.实现任务阶段3-处理Servlet023.3Servlet规范设计3.3.1MyServlet该类模仿Servlet接口,为了简化,只声明了三个方法:init(),service(),destroy()packagecom.li.MyTomcat.servlet;importcom.li.MyTomcat.http.MyRequest;importcom.li.MyTomcat.http.MyResponse;importjava.io.IOException;/***@author李*@version1.0*只保留了三个核心的方法声明*/publicinterfaceMyServ
实现023.实现任务阶段3-处理Servlet023.3Servlet规范设计3.3.1MyServlet该类模仿Servlet接口,为了简化,只声明了三个方法:init(),service(),destroy()packagecom.li.MyTomcat.servlet;importcom.li.MyTomcat.http.MyRequest;importcom.li.MyTomcat.http.MyResponse;importjava.io.IOException;/***@author李*@version1.0*只保留了三个核心的方法声明*/publicinterfaceMyServ
满汉楼024.功能实现044.6显示所有菜品4.6.1思路分析创建一个菜单表menu,在Domain层创建与菜单表对应的Javabean-Menu类,在DAO层创建MenuDAO,完成对menu表的增删改查,在Service层创建一个和menu表相关的service类,service类提供给界面层使用4.6.2代码实现1.创建menu表--创建menu表(id,name,type,price)CREATETABLEmenu( idINTPRIMARYKEYAUTO_INCREMENT,#自增主键,作为菜谱编号(唯一) NAMEVARCHAR(50)NOTNULLDEFAULT'',#菜品名称
满汉楼024.功能实现044.6显示所有菜品4.6.1思路分析创建一个菜单表menu,在Domain层创建与菜单表对应的Javabean-Menu类,在DAO层创建MenuDAO,完成对menu表的增删改查,在Service层创建一个和menu表相关的service类,service类提供给界面层使用4.6.2代码实现1.创建menu表--创建menu表(id,name,type,price)CREATETABLEmenu( idINTPRIMARYKEYAUTO_INCREMENT,#自增主键,作为菜谱编号(唯一) NAMEVARCHAR(50)NOTNULLDEFAULT'',#菜品名称
Java反射022.Class类2.1基本介绍Class类也是类,因此也继承Object类Class类对象不是new出来的,而是系统创建的对于某个类的Class类对象,在内存中只有一份,因为类只加载一次每个类的实例都会记得自己是由哪个Class实例所生成通过Class对象可以得到一个类的完整结构(通过一系列API)Class对象是存放在堆的类的字节码二进制数据,是放在方法区的,有的地方称为类的元数据(包括方法代码,变量名,方法名,访问权限等)当我们加载完类之后,除了会在堆里生成一个Class类对象,还会在方法区生成一个类的字节码二进制数据(元数据)例子:packageli.reflection
Java反射022.Class类2.1基本介绍Class类也是类,因此也继承Object类Class类对象不是new出来的,而是系统创建的对于某个类的Class类对象,在内存中只有一份,因为类只加载一次每个类的实例都会记得自己是由哪个Class实例所生成通过Class对象可以得到一个类的完整结构(通过一系列API)Class对象是存放在堆的类的字节码二进制数据,是放在方法区的,有的地方称为类的元数据(包括方法代码,变量名,方法名,访问权限等)当我们加载完类之后,除了会在堆里生成一个Class类对象,还会在方法区生成一个类的字节码二进制数据(元数据)例子:packageli.reflection
家具网购项目实现011.项目开发环境搭建创建一个web项目,添加需要的jar包(暂不使用Maven)依照5.1的表格来创建项目的大体分层:2.功能01-搭建前端页面2.1需求分析/图解2.2思路分析略2.3代码实现将前端人员给的静态页面拷贝到web目录下即可资源详见:https://github.com/liyuelian/furniture_mall.git配置Tomcat点击RebuildPproject,让项目能识别新拷贝的资源。启动Tomcat(启动过后一定要保证out目录下有拷贝进来的资源)2.4完成测试在浏览器访问项目首页http://localhost:8080/furnitur