JAVA
文章平均质量分 57
梳子不爱头发
爱编程的小逗比
展开
-
数据类型的应用以及联想
数据类型的应用以及联想 java八大数据类型,byte,char,short,int,long,float,double,boolean我们早已耳熟能详,然而在运用时还是需要技巧,在强制转型时的使用技巧我的理解是: 例如int,和,long,int这个...2013-11-25 23:34:43 · 81 阅读 · 0 评论 -
多线程实现植物大战僵尸
我们在之前学的编程语言中,所有代码的执行顺序是串行的,也就是按顺序执行,这样就造成了一个问题,也许当你刚刚接触编程语言时候无关大碍,甚至在达到一定水平之后可以自己设计五子棋,贪食蛇,连连看等游戏,但是看着自己设计的界面以及游戏,有没有感觉缺少什么?对了,就是单调,不够动态,因为串行语句必须等上面的代码执行完了才会执行下面的语句,这样就无法支持同步性,当时造成我主要困扰的是想要完成...2014-04-26 21:41:39 · 512 阅读 · 0 评论 -
苦逼装Mysql的体验,装了半天装不上的同学点进来看看
自从把安卓数据库搞得比较熟以后,以为pc端的mysql也很好装,由于学校网速很渣,自以为从官网上下了一个356M的安装包以为很牛逼,5.6.27的版本,然而下下来发现跟书上的描述不一样啊,完全没找到安装msi,后来查询才发现下的是免安装版本,在运行sqld.exe时,发现启动不起来,这种应该是相当于服务器,在任务管理器中并没有发现它的存在,自然s...2015-10-18 00:06:07 · 119 阅读 · 0 评论 -
通信多人聊天基础
多个客户端实现多人聊天 前面已经讲过一个客户端与一个服务器相连的情况,然而发现再加入一个客户端的时候,程序不能如期运行,这是因为当你创建的只是一个客户端,另一个客户端是不能连入,简而言之就是服务器只把门牌号给了一个上访者,这时就要不断创建客户端,如下:...2014-10-20 10:56:06 · 159 阅读 · 0 评论 -
手机与PC的网络协议
手机客户端与PC服务端的网络通信 前面我们学过电脑与电脑之间的通信,以及多人聊天协议,现在我们就用一台电脑做服务器,一部手机做客户端,来实现手机与电脑之间的通信啦。 首先,异曲同工,在手机上建立客户端与在电脑上是差不多的,首先...2014-10-26 18:16:34 · 599 阅读 · 0 评论 -
对Java语言无指针的理解
无”指针“霸主地位【前言】: 当初确实是因为JAVA无指针雀跃过很长时间,因为实在是被c++的指针指晕过很多回,所以也因此应用Y的引论“写c的是大神,写汇编的是狂人,写二进制的是疯子”。所以写JAVA的是什么,就仁者见仁智...2016-04-06 15:08:29 · 658 阅读 · 0 评论 -
垃圾回收机制与内存泄漏之间的关系
GC(Garbage collection) 英语直译,垃圾收集 【编程中的小确幸】: 你是幸运的,作为一名JAVA程序员,有些时候室内打扫卫生不需要你做,自有人替你打扫,这样想一想是不是很爽。 但是作为一名资深从C,C++,走过来的人来说,在C和C++里面是要求程序员...2016-04-11 20:43:19 · 259 阅读 · 0 评论 -
Java从小兵到指挥官领兵作战—线程高并发扫盲篇
前言:学习完java前篇后,基础知识后,并发编程是java高级应用,也是你不得不面对的进阶之路,从多线程开始这条路就开始曲折起来,你可能说我用串行也能够实现一大堆事,但是但是当当一大堆一大堆事来的时候你能够面面俱到,这时候就是需要你的程序代码学会三头六臂处理事务了。也就是说从java线程开始,你要学会成为一个指挥官,不再是小兵要学会领兵作战.你要学会何时调用什么兵种作战,什么时候停止,什么时...原创 2019-03-29 16:40:36 · 426 阅读 · 0 评论 -
线程基本操作
前言:线程神秘而又令人向往,好奇是恋上的第一步,出乎意料有时候又让你懊恼,可能你永远无法真正把握线程的小脾气,总会给你出一点状况,可这就是她的俏皮之处,想要探究更深。她,状况不多,通常也就是NEW RUNNABLE BLOCKED WAITING TIMEED_WAITING TERMINATED终止线程:现在很多文章都会提到了线程的安全性。我们先看下线程终止,线程终止根据我们学的直接th...原创 2019-03-30 14:31:49 · 275 阅读 · 0 评论 -
保护我们的线程-锁的概念
这里提到的锁其实就是关键字Synchronized,,它作用是实现线程间的同步,使得每一次只有一个线程进入同步块,保证线程间的安全性。关键词Synchronized三种基本用法:给定对象加锁,只有获得锁的线程才能访问该同步块代码作用于实例方法:给当前实例加锁,获得该实例的才能访问该同步代码块作用于静态方法:相当于对当前类加锁,获得当前类锁才能访问该代码块。想要做一个计数器累加直...原创 2019-03-31 13:10:05 · 247 阅读 · 0 评论 -
公平锁和非公平锁及信号量
Synchronized是线程执行完毕以后释放资源,这里我们看不到手动锁住临界区和释放临界区的操作,而重入锁可以做到这一点。重入锁使用java.util.concurrent.locks.ReentrantLock先放代码帮助理解import java.util.concurrent.locks.Condition;import java.util.concurrent.lo...原创 2019-04-01 17:04:23 · 532 阅读 · 0 评论 -
读写锁--读者系统福利
对于线程读写,通常如果线程们做的都是读的操作,加同步锁一次只让一个线程进的话,那么其他线程都是要等的,但是这样十分没有效率,因为读是可以共享的操作,如果期间没有线程写操作,读资源是可以同时进入几个线程的。则总结归纳就是:读-读不互斥,读读之间不阻塞 读-写互斥:阻塞 写-写互斥:写写阻塞那么这几条其实非常好记就是只要有写的操作就互斥,不允许同时进行。下面我们来看一段代码,分别定义...原创 2019-04-01 17:56:31 · 207 阅读 · 0 评论 -
线程之-倒计时器CountDownLatch+循环栅栏
线程的奥秘:如果你碰到一个题目需要执行完10个或者n个才能轮到下一个线程执行的案例你需要采用怎样的方法?这时候简单实用倒计时器CountDownLatch现在做一个火箭发射前检查完10道工序再发射的多线程控制原型:import java.util.Random;import java.util.concurrent.CountDownLatch;import java.util.co...原创 2019-04-16 10:50:57 · 718 阅读 · 0 评论 -
网络通信初步
网络通信初步讲解 从刚开始讲,我们最常用的聊天工具无非是qq,想要编程达到qq的效果还是需要一定的理解,比如说,我们手中的电脑是服务器,想要跟你聊天的人就是客户机,你的电脑的服务器有一个属于你的标示,这里可以理解成门牌号,当人家想要访问你的时候,必须要知道你的门牌号,就是...2014-10-08 11:46:06 · 110 阅读 · 0 评论 -
哈夫曼编码
哈夫曼编码(Huffman Coding)是一种编码方式,哈夫曼编码是可变字长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长 度最短的码字,有时称之为最佳编码,一般就叫作Huffman编码。 以下是代码实现:public class HFM { class...2014-03-23 19:11:22 · 216 阅读 · 0 评论 -
类与对象
类vs 对象 在编程语言的学习中我们经常提到的通常会使类和对象,在初期学习c语言或者是c++的同学或许还没体会到这一点,因为就算是c++也只是部分面向对象化语言,但是在java语言上分析的话,java是完全面向对象化的语言,可不要小看这一个“完全”字眼,因为在我们初次与计算机交流...2013-11-26 17:59:52 · 122 阅读 · 0 评论 -
植物大战僵尸与类与继承关系
在学习继承之前,我们都有个疑惑i,那就是为什么要学类与继承,简单举个例子而言,老爸老妈多优秀,甚至长相,孩子生下来就基本具有了这个属性,老爸高,儿子就高,当然这不一定,只是举个例子,那么儿子就不用费心自己努力去长个了,比如老爸学习好,儿女就可以继承老爸优良传统,通过耳濡目染,久而久之就会学习好了,财富也是,也就是说羡煞旁人都得不到的好多东西,身为继承者就可以轻松得到了,这就...原创 2013-12-01 19:23:24 · 1147 阅读 · 0 评论 -
QQ登陆界面的响应及计算器的实现
事件机制实现的QQ登陆响应和计算器 第一个需要介绍的就是: .事件源swing awt 图形界面 可以成为事件源对象的是:所有的图形界面组件对象。 你的动作发生在哪一个组件上,那么该组件对象就是事件源对象。6.事件监听器方法 1.//动作监听器方法(输入框就是回车操作,按钮上就是鼠标单击)捕获事件源,输入输出 addActionListene...2013-12-03 18:20:35 · 221 阅读 · 0 评论 -
分形递归画图案图片DIY
递归,用最少的代码量完成最大的工作量,初步对递归开始上心是因为机试老师给了一道题,看到后开始着急忙慌就开始做,最后那个代码量,就不忍吐槽了,自己还觉得挺自豪的,写了那么多行代码,也打印出了正确图形,,结果老师一公布他的答案,和我几百行的代码相比老师只用了7行,完败。。。。。。。。。于是觉得与其拿到题就开始做不如先找规律,...2014-04-30 19:31:00 · 551 阅读 · 0 评论 -
多线程植物大战僵尸源代码
这是上一篇多线程实现植物大战僵尸博客文章的源代码,部分改进,添加攻击,生产阳光等功能详情请看上一篇代码。后续改进中,代码会继续在这里上传...原创 2014-05-09 10:07:41 · 621 阅读 · 0 评论 -
文件I/O流,及浅显加密解密
I/O流在文件中尤为重要,尤其是文件中,我们鼠标中让你一天中用到最多的什么复制,粘贴,剪切,新建,删除,等等都涉及到了文件操作,我们在感叹方便之余是不是也想实现这一功能呢,其实我们在安装windows时候,这些代码就已经被编好,并且快捷到我们鼠标右键中,方便我们的使用,然而在使用着这些应用时,也想自己做出这样的代码,于是在刚刚学了I/O流之后,就可以动手操作了,...2014-05-09 10:22:49 · 151 阅读 · 0 评论 -
解析BMP格式文件,并实现重绘
我们看到一张图片,无论是什么格式的,都是用图片浏览器打开的,强大的浏览器可以解析各种格式图片。例如jpg,bmp,gif,png,等等,这里我们讲一下解析较为简单的BMP格式,首先准备一张bmp格式的图片, 然后UltraEdit软件解析,出来会是这个样子 接下来对照下表解析以上字节意思,注意以上都是16进制,学会使用计算器进行转换成10进...2014-05-18 15:26:45 · 223 阅读 · 0 评论 -
Android登录界面开发及响应;页面跳转;传参
import android.app.Activity;import android.app.AlertDialog;import android.os.Bundle;import android.util.Log;import android.view.Menu;import android.view.View;import android.view.Vie...2014-02-15 21:28:05 · 740 阅读 · 0 评论 -
数组排序
数组联想首先既然讲到数组,那我们来讲讲,数组有什么优点呢? 按照下标顺序或者直接指定的下标,访问读取的速度效率高。 数组有什么缺点呢? 内存空间在定义的时候就固定了,不能改变内存大小。 数组是属于什么数据类型的? Java 基本数据类型 引用类型(对象类型,类类型) class...2014-03-03 02:34:15 · 109 阅读 · 0 评论 -
队列 java中的拟动态数组
队列 用惯了数组的同学可能会思考一个问题:“有没有比数组更方便的方法,可以任意添加元素,而不浪费空间,相信许多学过C++的同学会立马知道,动态数组,然而java没有指针,所以也就没有动态数组,这时候怎么办呢?对了,队列,java中的神器,听起来十分高大上,然而...原创 2014-03-08 16:37:14 · 104 阅读 · 0 评论 -
链表 插入删除添加
Java中的链表 我在写关于java代码的过程中,总要引用C中的术语,并不是因为卖弄C中的学识,而是作为一种最为基础的语言,它的最先存在必定是有意义的,毕竟C++,C#,java都是以它为基础慢慢建立起来的,所以在链表这里我一如往常引用C中的指针来解释。...2014-03-20 21:21:56 · 135 阅读 · 0 评论 -
二叉树实现复杂运算
二叉树 树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构,很象自然界中的树那样。树结构在客观世界中广泛存在,如人类社会的族谱和各种社会组织机构都可用树形象表示。树在计算机领域中也得到广泛应用,如在编译源程序如下时,可用树表示源源...2014-03-23 18:59:57 · 192 阅读 · 0 评论 -
线程阻塞工具类LockSupport+线程复用
比起Thread.suspend更加安全,比起object.wait不需要获得某个对象的锁,也不会抛出InterruptedException异常。import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.LockSupport;import java.util.concurrent.loc...原创 2019-04-16 13:05:39 · 372 阅读 · 0 评论