- 博客(12)
- 收藏
- 关注
原创 Java自动拆装箱机制
自动拆装箱JDK 1.5 中增加了基本类型和包装类之间的自动拆装箱机制。在需要包装类时,基本数据类型就会自动装箱成包装类;当需要基本数据类型时,包装类对象就会自动拆箱变为基本数据类型。
2017-11-01 21:35:53 294
原创 Java中的String
以下总结,基于 JDK1.7 版本。String对象String类虽然不是Java的八种基本数据类型之一,但是也可以像基本数据类型一样直接通过字面量赋值,当然也可以通过new来实例化一个字符串对象。但是字面量赋值和new创建一个字符串对象的方式有本质的区别。字面量赋值这种方式首先会在方法区常量池中查找字符串,若存在内容相同的字符串,则新对象的引用直接指向这个字符串。若不存在,则在常量池中生成内容
2017-10-24 13:13:03 203
原创 工厂模式
什么是工厂模式?一个功能,可能有不同的实现方法,因此我们把它抽象为一个接口,根据具体需求,编写许多个实现类。然后设计一个工厂,根据不同的条件,选择创建并返回我们具体需要的实现类对象。为什么要用工厂模式?工厂模式降低了对象构造之间的代码耦合,当我们更新接口的实现时,就不需要修改原来的代码,只需要修改工厂类的代码。 举个例子: 造一辆车,需要3个零件。我们自己造的话,那就要先 new 三个零件
2017-10-22 19:37:17 135
原创 单例模式
什么是单例模式?单例模式,就是保证一个类在程序中只有唯一的一个实例。单例模式的应用场景?使用单例模式设计的类,一般充当资源管理器的角色,防止多个线程对共享资源的多重占用。又或者是需要频繁创建、销毁对象的类,设计为单例模式可以减少系统消耗,提高系统性能。比如说数据库连接池和多线程线程池就采用了单例设计模式,还有网页的计时器等。怎么创建一个单例?首先我们要解决以下问题: 类只能被实例化一次
2017-10-22 11:52:56 108
原创 简析Servlet
是什么?Servlet(server applet)是一种用Java语言编写,运行在Web服务器上的应用程序。做什么?Servlet的作用是处理客户端发来的请求,以及返回响应内容,生成动态的Web页面。Servlet和Tomcat有什么关系?Tomcat是一个Web服务器,它接收浏览器发来的HTTP请求报文(文本),Servlet容器解析请求并封装为request对象,作为Servlet程序的参数使
2017-10-19 17:40:00 155
原创 java线程间通信
Thread.join()如果一个线程A的run()方法中,调用方法B.join(),那么线程A代码运行到此处时,会等待线程B运行结束后才继续运行。Object.wait()和notify()一个synchronized代码块中,- 如果被共享对象调用wait()方法,这个线程就会释放对象锁,进入wait状态(Thread.sleep()方法不会释放对象锁),- 其他线程可以获取对象锁并运行代码
2017-10-12 19:54:00 171
原创 java基本线程机制
基本线程机制方法一实现Runnable接口,编写run()方法,在里面描述了要做的事。class A implements Runnable{ public void run(){ // 编写任务脚本 }}注意:如果在main()方法里直接调用run()方法,它不由单独的线程驱动,而是分配给运行main()方法的那个线程,意味着如果多个实例依次调用run()方法,那
2017-10-12 12:54:43 319
原创 全排列的编码与解码——康托展开
对于一个集合 {1,2,3,…,n},很明显它有 n! 种全排列, 把它们全都按照字典序排好序(从小到大),对应顺序{1,2,3,…,n!}, 假如问你第X个全排列是什么,或者某个全排列在其中的序号是多少,可以利用康拓展开式来求。康托展开式: X = a[n]*(n-1)! + a[n-1]*(n-2)! + … + a[i]*(i-1)! + … + a[2]*1! + a[1]*0!康
2017-09-22 17:56:19 782
原创 对cookie和session的理解
什么是cookiecookie是一些key-value的集合。用户通过HTTP第一次访问一个服务器的时候,服务器就会把一个cookie返回给客户端,保存在客户端的内存或者硬盘中,同一个用户下次再访问服务器时,就把cookie带上,这样服务器就认出这个用户了。cookie被加在http头中,作为其中的一个字段,其实就是一串字符串的形式。像这样: Set-Cookie: userName=”wdx”
2017-08-03 15:32:29 563
原创 对反射(reflect)的理解
关于反射的理解反射利用RTTI(Run-Time Type Information)的概念,就是可以在程序运行过程中,动态地获取一个类的信息,包括类名、直接父类、方法、属性等。通过反射,我们可以在不知道一个类的信息的情况下,获取它的具体信息,并创建它的实例。Java的反射基于Class类,这是一个特殊的类,是“类”的抽象,即“类”的类,它保存了一个类声明的所有信息。每个类都有自己的Class类对象,
2017-08-01 22:25:04 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人