
java
文章平均质量分 60
wyu-jat
走出属于自己的路
展开
-
java的各种锁
乐观锁与悲观锁乐观锁:在线程占有资源的时候,其它线程也可以切换,获取到响应的资源悲观锁:在线程占有资源的时候,其它线程只能阻塞,不可以获取资源,只有当线程释放之后,其它线程才可以申请到占有的资源所有实现Lock的都是悲观锁公平锁与非公平锁公平锁:所有线程进行资源申请的时候,都必要按照对应的队列来获取非公平锁:所有线程对资源申请的时候没有次序,谁先抢到资源谁先执行ReenTrantLock根据构造函数可以实现公平或者非公平锁可重入锁与不可重入锁业务场景如下,方法A保原创 2021-08-13 15:48:10 · 166 阅读 · 0 评论 -
乐观锁与悲观锁
乐观锁和悲观锁机制,是在多用户环境并发控制得两种锁机制乐观锁:在关系数据库管理系统中,乐观并发控制(又名乐观锁)是一种并发控制得方法。它假设多用户并发的事务在处理时不会彼此相互影响,各事务能够在不产生锁的情况下处理各自影响的那部分数据。在提交数据更新之前,每个事务会先检查在该事务读取数据后,在没有其他事务又修改了该数据。如果其它事务又更新的话,正在提交的事务就会回滚。乐观并发控制得事务包括以下阶段...原创 2018-06-24 22:52:55 · 178 阅读 · 0 评论 -
java面试(基础)
1、一个java源文件里面是否可以包含多个类(不是内部类),有什么限制答案:可以有多个类,但是只能有一个public的类,而且public类的类名必须和文件名一致2、&和&&的区别答案:&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都未true的时候,整个表达式才为true,否则只有一方是false,结果都为fal...原创 2018-06-24 22:51:58 · 240 阅读 · 0 评论 -
adapter调用notifyDataSetChanged刷新没有起作用的原因
listview列表中的数据更新后刷新是使用listview的基础,但是有时候在更新数据之后使用notifyDataSetChanged方法刷新页面的时候就出现了没反应的现象。原因是adapter会监听一个数据源,这个数据源在一开始的时候会指向一个内存,当指向此内存的数据源发生变化的时候adapter调用notifyDataSetChanged方法就可以进行刷新,但是问题就出在这里数据源往原创 2016-08-19 15:27:28 · 3909 阅读 · 0 评论 -
线程总结
想走的远,那么你基础一定要好。别以为这些不是东西。未来能走多远,要看基础1,两种开启线程方法:子类,Runnable接口。 new Thread(){run(){...}}.start(); new Thread(new Runnable(){run(){...}}).start();2转载 2016-04-15 11:47:26 · 273 阅读 · 0 评论 -
android手机屏幕适配理论知识
对于具有相同像素密度的设备来说,像素越高,尺寸就越大,所以可以换个思路,讲问题从单纯的尺寸大小转换到像素大小和像素密度的角度来占比最高的是480*800,320*480的设备竟然也占据了很大比例,但是和半年前的数据相比较,中低分辨率(320*480、480*800)的比例在减少,而中高分辨率的比例则在不断地增加。虽然每个分辨率所占的比例在变化,但是总的趋势没变,还是转载 2016-04-15 11:42:33 · 723 阅读 · 0 评论 -
获取屏幕辅助类
/** * 获得屏幕相关的辅助类 */public class ScreenUtils { private ScreenUtils() { throw new UnsupportedOperationException("cannot be instantiated"); } /**原创 2016-04-15 11:40:26 · 277 阅读 · 0 评论 -
侧滑菜单的实现
一般的侧滑的实现ViewGroup Menu +ContentonTouchEventMOVE:ViewGroup的leftMarginUP:根据现实菜单的宽度,决定将其隐藏或者现实:1、Scroller2、LeftMargin + Thread今天,继承HorizontalScrollView自定义ViewG原创 2016-04-15 11:34:56 · 243 阅读 · 0 评论 -
按字母索引排序listview
首先需要三个工具类第一个工具类:侧边字母表public class SideBar extends View { // 触摸事件 private OnTouchingLetterChangedListener onTouchingLetterChangedListener; // 26个字母 public static String[]原创 2016-04-15 11:31:16 · 683 阅读 · 0 评论 -
HTTP与socket编程
socket是对TCP/IP协议的封装和应用http是应用层协议,主要解决数据如何在网络中传输传输层的TCP是基于网络层的IP协议的,而应用层的HTTP协议又是基于传输层的TCP协议的,而Socket本身不算是协议,就像上面所说,它只是提供了一个针对TCP或者UDP编程的接口。建立socket连接至少需要一对套接字,其中一个运行与服务器(ClientSocket),一个原创 2015-12-28 14:39:05 · 1263 阅读 · 0 评论 -
TCP,UDP
TCP:TCP是面向链接的,提供一种端对端的传输 一种面向连接的,可靠的,基于字节流的传输层通信协议在计算机网络中,他完成第四层传输层所指定的功能位于IP层之上,应用层之下的中间层TCP进行三次握手 第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户原创 2015-12-28 14:37:47 · 302 阅读 · 0 评论 -
Android屏幕适配
对于具有相同像素密度的设备来说,像素越高,尺寸就越大,所以可以换个思路,讲问题从单纯的尺寸大小转换到像素大小和像素密度的角度来占比最高的是480*800,320*480的设备竟然也占据了很大比例,但是和半年前的数据相比较,中低分辨率(320*480、480*800)的比例在减少,而中高分辨率的比例则在不断地增加。虽然每个分辨率所占的比例在变化,但是总的趋势没变,还是这六种,只是转载 2015-12-28 14:33:25 · 824 阅读 · 0 评论 -
listview里面嵌套gridview的防微信朋友圈
看博文之前,希望大家先打开自己的微信点到朋友圈中去,仔细观察是不是发现朋友圈里的有个“九宫格”的图片区域,点击图片又会跳到图片的详细查看页面,并且支持图片的滑动和缩放?这个功能是不是很常用呢?!那么我今天正好做了这个Demo,下面为大家讲解一下。首先按照惯例先看一下效果图吧,尤其不会录制gif动画(哎~没办法,模拟器不支持多点触控,刚好我的手机又没有Root,不能录屏,悲催啊,大家见谅,想要看真实转载 2018-06-24 22:49:03 · 270 阅读 · 0 评论 -
内部类
内部类的特性:1、同生共死2、可以相互访问3、内部成员变量可以访问到父类的东西4、父类可以操作内部类内部类的分类:成员内部类:定义在类的里边,方法的外面局部内部类:定义在方法里面的类静态内部类:public static class 类名匿名内部类:就好像时间监听时候的new View.onClickListener(){},这里new原创 2015-05-04 19:28:29 · 351 阅读 · 0 评论 -
instance检验对象类型
在java中一切皆对象所以我们可以想象的出可不可以去用一个方法来校验出一个对象具体是属于什么类instance其实就是一个比较的类就是用法也就很简单就像是一个button instanceof anotherButton这是个判断的语句,所以返回的一个值就是一个Boolean类型的值了原创 2015-05-04 19:27:04 · 492 阅读 · 0 评论 -
URL
为了表示URL, java.net中实现了类URL。我们可以通过下面的构造方法来初始化一个URL对象: (1) public URL (String spec); 通过一个表示URL地址的字符串可以构造一个URL对象。 URL urlBase=new URL("http://www. 263.net/") (2) public URL(URL conte原创 2015-04-14 12:39:11 · 1464 阅读 · 0 评论