在前一章查看tomcat启动文件都干点啥---Bootstrap.java中我们得出结论,在Bootstrap中通过反射调用Catalina类中的getServer,start,stop,stopServer等方法,下面看一下Catalina类中给外部提供的公共方法:Start:其中Catalina类的入口当然是start方法.start方法实现了启动一个新的server事例的功能,看一下start方法的内容:1publicvoidstart(){23if
系统 2019-08-12 01:33:02 2170
版权声明:转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/90200689python代码如下。classSon():def__init__(self):print("sonsayhi")print("haha")if__name__=='__main__':son=Son()运行结果如下:再试用下面代码,只有几个类的定义,没有实例化。cl
系统 2019-09-27 17:56:21 2169
看了"臧圩人"的一片多线程文章,根据自己的想法才写出这篇过于java多线程的文章。一、怎样实现多线程:1.1实现多线程:1.1.1、实现线程的方式有两种:1、继承java.lang.Thread,并重写它的run()方法,将线程的执行主体放入其中。2、实现java.lang.Runnable接口,实现它的run()方法,并将线程的执行主体放入其中。1.1.2、这是继承Thread类实现线程的示例:Java代码publicclassThreadTestext
系统 2019-08-29 23:48:26 2169
Java语句-------关键语句介绍一、while语句一般形式:while(条件表达式){语句体………}执行过程:条件表达式为真,执行语句体。否则,退出!二、dowhile语句一般形式:do{语句体…….}while(条件表达式);执行过程:先执行一次语句体,判断条件表达式是否为真,为真再执行do语句中的语句体。为假,退出。需要注意:与while语句区别1.while(条件表达式)后面有分号;2.不管条件表达式是否为真,语句体均会执行一次。三、for语句
系统 2019-08-29 23:22:03 2169
对象与基本类型几乎所有Java初学者都被告知,在Java里一切都被视为对象(Object),操纵对象的表示符实际上时对象的一个引用(Reference)。例如Stringstr;//注意!此处创建了一个引用,而非对象str=newString(“Hello”);//这里创建了一个String对象并与str相关联通常用new操作符来创建一个新对象,并存储在堆里面。【注】具体内容可以参看Java堆与栈程序设计中有一系列小的、简单的变量(笔者是这样认为的),将它
系统 2019-08-29 23:07:26 2169
本来上周双休日没什么事情,准备干点遗留了很久的正经事,结果半途忍不住手贱看新闻,于是被11.28事件触动,随大流的针对棒子及棒子粉抽疯了两天。没想到到星期一上班脖子就不得劲,顺便查了点资料,发现个山寨版的颈椎矫正图,觉得挺有意思。如下图:于是回家后想到自己也做个玩。问题是,咱爷们不说程序员吧,好歹也是个垒码的,直接PS文字图未免有碍观瞻,于是抽空写了个Java自动生成版的。代码如下:packageorg.test;importjava.awt.AlphaC
系统 2019-08-29 23:01:01 2169
c.适配器模式我的笔记本是港货,它的插头与我们常用的插座不一样,所有我出差的时候我必须带一个适配器,才能使用不同地方的插座。这是一个对适配器模式最经典的描述。当我们设计的系统要与其它系统交互,或者我们设计的模块要与其它模块交互时,这种交互可能是调用一个接口,或者交换一段数据,接受方常常因发送方对协议的变更而频繁变更。这种变更,可能是接受方来源的变更,比如原来是A系统,现在变成B系统了;也可能是接受方自身的代码变更,如原来的接口现在增加了一个参数。由于发送方
系统 2019-08-29 22:50:56 2169
volatile,用更低的代价替代同步为什么使用volatile比同步代价更低?同步的代价,主要由其覆盖范围决定,如果可以降低同步的覆盖范围,则可以大幅提升程序性能.而volatile的覆盖范围仅仅变量级别的.因此它的同步代价很低.volatile原理是什么?volatile的语义,其实是告诉处理器,不要将我放入工作内存,请直接在主存操作我.(工作内存详见java内存模型)因此,当多核或多线程在访问该变量时,都将直接操作主存,这从本质上,做到了变量共享.v
系统 2019-08-29 22:02:41 2169
渲染报表BIRT支持HTML格式和PDF格式,这两种报表生成的过程相同,只是设置不同的RenderContext和RenderOptions。我们把相同的部分提取为父类的公共方法,不同的部分留给子类实现:IReportDocumentiReportDocument=engine.openReportDocument(docFilename);//CreateRenderTaskIRenderTasktask=engine.createRenderTask(
系统 2019-08-12 09:30:39 2169
e.printStackTrace();本文从Java异常最基本的概念、语法开始讲述了Java异常处理的基本知识,分析了Java异常体系结构,对比Spring的异常处理框架,阐述了异常处理的基本原则。并且作者提出了自己处理一个大型应用系统异常的思想,并通过设计一个异常处理的框架来论述此思想。一、异常的概念和Java异常体系结构异常是程序运行过程中出现的错误。本文主要讲授的是Java语言的异常处理。Java语言的异常处理框架,是Java语言健壮性的一个重要体
系统 2019-08-12 09:29:41 2169
object对象转换为String的一些总结--------------------------------------------------------------------------------在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能。本文将对常用的转换方法进行一个总结。常用的方法有Object.toString(),(String)要转换的对象,String.valueOf(Object)等。下面对这些方
系统 2019-08-12 09:29:33 2169
本人联系方式:msn:snowfox_1028@hotmail.comemail:snowfox_1028@163.com学习和使用这么久java,但是还是觉得很茫然,什么都知道一点,但是什么都不精通,如struts,hibernate,ejb,ibatis,spring,现在想想,应该选择一个目标,进行深入的学习和应用,这样才能有所成,做了这么长的java开发,最后得到的结论和经验就是这些。也好,有了一个明确的方向,一个目标,呵呵,可以走我自己的路了,日
系统 2019-08-12 09:29:27 2169
go语言为了更加简洁优雅,没有类似java的try...catch...这种写法,因为try...catch在某些情况下会嵌套使用,造成代码运行后不知道哪里就跑到了异常处理的代码里。但是也有相应的异常处理机制。需要记住的关键词有个,error,defer,panic,recover。1errorerror类似java中的Exception类型,不同的是Exception必须搭配throw和catch使用。Go语言中的error类型实际上是抽象了Error(
系统 2019-09-27 17:46:09 2168
异常处理是程序设计中一个非常重要的方面,也是程序设计的一大难点,从C开始,你也许已经知道如何用if...else...来控制异常了,也许是自发的,然而这种控制异常痛苦,同一个异常或者错误如果多个地方出现,那么你每个地方都要做相同处理,感觉相当的麻烦!Java语言在设计的当初就考虑到这些问题,提出异常处理的框架的方案,所有的异常都可以用一个类型来表示,不同类型的异常对应不同的子类异常(这里的异常包括错误概念),定义异常处理的规范,在1.4版本以后增加了异常链
系统 2019-08-29 23:50:12 2168
javamd5的实现收藏importjava.lang.reflect.*;importjava.io.*;/*************************************************md5类实现了RSADataSecurity,Inc.在提交给IETF的RFC1321中的MD5message-digest算法。********************************************
系统 2019-08-29 23:47:03 2168