Java修炼之道
文章平均质量分 85
芷若初荨
每天进步一小点,跨越未来一大步!朝梦想不断前进!
展开
-
投票系统开发问题合集
VoteSystem项目源码地址:https://github.com/Cecilia520/VoteSystem1.在服务端启动模块中,由用户输入的信息如何持久化到磁盘中?解决方案一: 将用户输入的信息存储在集合中,一般使用最多的集合有Map、List,然后使用将集合写入文件中(比较常见,首选)。 而对于存储,有两种解决方式,一种是Map驱动,以key值作为对象的一个唯一属性,value再使用原创 2017-08-15 20:27:02 · 2322 阅读 · 1 评论 -
再见线程
上次仅仅谈到线程的定义的几种方式,其实,在线程的使用过程中是需要十分谨慎的,在单机上,使用线程并不能很好的提高效率,当然这也是我之前一直以来的误区,一直认为使用线程就可以提高程序运行效率,实质上不然,线程的使用时需要十分谨慎的,如若一不小心就会适得其反,因此,再见线程时,就需要提到线程池管理线程的问题、线程安全的问题以及定时器的使用等等。线程池首先所谓线程池呢,简单而形象地来讲就是,存放很多线程的容原创 2017-08-14 21:59:32 · 473 阅读 · 1 评论 -
人生只若如初见——初见线程
之前在学习多线程的时候,那个时候并没有掌握得很好,用一句话来形容就是“略懂一二”。近段时间,又重温了多线程,我却发现,多线程的内容涉及甚广,不仅仅针对单一程序,而且还涉及有关系统的性能等方面,今天决定重新来了解它,都说“人生只若如初见”,总觉得初见的时候我们是最好的,至此,已初见的态度重新学习多线程。谈到线程,首先还是得从一些基本只是开始—————— 线程和多线程线程所谓线程,使用官方的语言来说,能原创 2017-07-29 10:16:40 · 549 阅读 · 4 评论 -
那些年,让我们一起头疼的异常!
在后期学习过程中发现对于异常这部分掌握地并不是特别扎实,所以利用一个时间来好好复习下其中的具体知识。异常的来源天有不测风云,在我们编程过程中,总会出现或多或少的错误,而有些错误是我们可以通过修改代码解决的,这些错误称为异常,但是有些错误是不能通过修改代码解决的,必须通过其他方式解决,这些错误称为ERROR。异常的继承所有的异常继承一个父类Throwable,这个父类又继承Object,在Throwa原创 2017-07-24 21:39:49 · 487 阅读 · 1 评论 -
ArrayList、LinkedList和Vector三兄弟的区别
一、同步性ArrayList和LinkedList是不同步的,而Vector是同步,也就是说ArrayList和LinkedList是线程不安全的,但是可以为节省同步而耗费的开销,而Vector是线程安全的,在多线程下,或许会使用到Vector,当然也可以使用Synchronized来实现同步,但是这样会使效率低下。二、数据增长 从内部实现机制来讲,ArrayList和Vector都是使用Ob原创 2017-07-23 22:00:06 · 411 阅读 · 0 评论 -
由浅入深理解抽象类和接口
抽象类抽象类的定义所谓抽象类,是指对某一个类的整体或根源的抽象描述,包括方法和属性。对抽象类的理解对于抽象类,一般继承的类与被继承的类之间的关系是“is a”的关系,表示被继承的类属于继承类的一部分;抽象类是不能被实例化;抽象类中可以有成员变量、抽象方法、构造函数、实体方法,并且抽象方法一般是由protected修饰的;抽象方法名和抽象类名前必须使用abstract修饰;抽象类存在的意义在原创 2017-07-23 21:36:05 · 769 阅读 · 0 评论 -
基于MVC模式模拟实现登录注册开发过程(二)
在上篇中,已经将整体的实现过程详细展示出来了,对于个人而言,在写代码的时候总会碰到一些难点和学习到一些新的东西,接下来,我想把这些总结记录下来,希望在这里能看到自己的成长。*Dao层1.对于具体实现类和接口的抽取的过程中,其实两者的顺序是可以相互交换。可以先实现具体实现类,然后将其进行抽取出来成接口,具体在Eclipse中抽取方式为:点击当前具体实现类——>选择refactor(重构)——>选择Ex原创 2017-05-13 11:09:06 · 1115 阅读 · 0 评论 -
基于MVC模式模拟实现登录注册开发过程(一)
需求:模拟前端后台登录注册的效果(MVC模式)准备工作: 1.搭建开发环境 1.1 导入开发包 *dom4j.jar *jstl.jar *beanUtils.jar *log4j.jar 1.2 创建组织程序的包 *com.Cecilia.domain *com.Cecilia.dao原创 2017-05-12 22:07:50 · 6849 阅读 · 0 评论 -
初谈Java集合
集合是什么?简单来说,集合=数组+对数组的算法,一般在实际操作过程中,批量管理数组就是使用集合或者数组。此外要注意的是:集合中存储的是引用类型,并且集合只保存每个元素对象的引用,而并非将元素对象本身存入集合中!因此导致,如果在集合之外修改集合中的元素,那么集合也会受影响。这篇主要是讲集合的基本内容和Collection接口操作集合的一些方法.......原创 2017-03-14 22:03:30 · 445 阅读 · 0 评论 -
final的神奇功能
**1. 修饰基础**数据成员**的final**这是final的主要用途,其含义相当于C/C++的const,即该成员被修饰为常量,意味着不可修改。如java.lang.Math类中的PI和E是final成员,其值为3.141592653589793和2.718281828459045。 **2. 修饰类或对象的引用的final** 在J原创 2017-03-19 21:17:38 · 401 阅读 · 0 评论 -
euqals()和==的那点事儿
今天在重温字符串的一些知识点时,却发现有很多点在经过时间的冲刷,有点忘记啦,现在对这个API中一些容易忘记和搞糊涂的只是进行整理—— 首先看下Java程序中一个程序的运行过程原理: 大家首先看这些例子来重温下:“ 例子A:```String str1 = "Java";String str2 = "java";System.out.print(str1==str2);ava基础的人原创 2017-03-19 21:04:58 · 399 阅读 · 1 评论 -
StringAPI String和StringBuffer之间的区别
简单地说,就是一个变量和常量的关系。StringBuffer对象的内容可以修改;而String对象一旦产生后就不可以被修改,重新赋值其实是两个对象。 StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。所以在实际使用时,如果经常需要对一个字符串进行修改,例如插入、删除等操作,使用StringBuff原创 2017-03-19 20:48:39 · 360 阅读 · 0 评论 -
再谈Java集合
上次简单地谈了下Java集合的部分内容,这次让我们继续来看下集合的其他知识,经过查看其他资料后,看到一张图可以很好地来表示Java框架,如下: 看到这张图,我们可以看到除了Collection,还有Iterator迭代器和Map,接下来,在这里要谈到的就是Iterator迭代器和Map。 1.Iterator迭代器 迭代器是一个实现Iterator或ListIter原创 2017-03-17 22:30:24 · 351 阅读 · 0 评论