
Java
Java基础,Java进阶
GentlemanTsao
android软件专家,移动终端研发15年。
技术领域:Android,qualcom modem,Java
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java并发:JVM线程同步:新冠肺炎疫情下去餐厅怎么吃饭?快看看java虚拟机是怎么运营线程餐厅解决这个问题的吧
前言:年初以来,新冠肺炎全球肆虐,大家谈病毒色变。在疫情期间,去餐厅吃饭让人发愁。不知道谁的身上就携带病毒。所以,最好是轮流就餐,错开吃饭的高峰期。这给餐厅的运营管理带来极大挑战。HOWever,howEVer,howevER!java虚拟机的“线程餐厅”早就运营的风生水起了。不信?那就随我一起实地考察一番吧。原创 2020-04-01 16:22:08 · 283 阅读 · 0 评论 -
Java并发:java内存模型(JMM)设计思想(一), 一分钟搞懂并发问题
前言:Debug并发的bug通常十分困难,这些bug在测试阶段一般无法暴露,直到程序高负载时才被发现,而且很难复制和追踪问题。解决并发bug的关键不在于问题暴露以后,而是在设计时花更多的精力确保程序已经正确的同步了,这比debug一个漏洞百出的并发程序要轻松的多。一个模型通常是为了解决一类问题而设计。Java内存模型(JMM)是为了解决并发中遇到的同步问题而产生的。所以,首先要讨论的是,程序并...原创 2020-03-27 20:49:26 · 475 阅读 · 0 评论 -
Java并发:Semaphore(信号量):Android中信号量的使用例子
每篇一格言:秩序就是正确的规律和事物永久的合理性——Henry Fielding前言lock操作在某一时刻只允许一个任务访问资源(例如写文件)。而Semaphore允许多个任务在同一时刻访问资源。本篇以Android代码为实例学习Semaphore的使用方法。1.Semaphore概念Semaphore翻译为信号量,但是这个名称不是很直观。更直观的称呼是许可证拥有者。下面我们用更形象的方式做类比。task——汽车访问资源 —— 上高速公路Semaphore —— 高速公路收费站原创 2020-03-24 11:09:48 · 832 阅读 · 0 评论 -
Java:自增(++)与自减(--),printf(“%d, %d”,++i,i++)的结果究竟是多少?
前言Java继承自C++,因而将很多C++中存在的运算符直接照搬过来了。自增(++)与自减(–)就是其中之一。本篇尝试探讨这两个运算符衍生出的负面问题,以及它们是否有存在的必要。自增与自减定义顾名思义,自增就是自己给自己加1,自减则是自己给自己减1.所以i++;等价于i = i +1;前置与后置前置a = ++i;后置a = i++;两者区别是,前置先运算后取值,后置先取...原创 2020-02-24 21:07:27 · 343 阅读 · 0 评论 -
Java:作用域与变量的生命周期,这道简单的题你能答对吗?
考虑如下一段代码:class Student{ private String mHomework; public String submitHomework(boolean mandantory){ if(mandantory){ /* 生成10个随机字符*/ String result = RandomStringUtils.randomAlphanumeric(10);...原创 2020-02-22 16:45:34 · 440 阅读 · 3 评论 -
Java:深入理解“多态”(Polymorphic)和动态绑定(Dynamic Binding)
每篇一格言:大音希声,大象无形。(至大的声音听起来却似没有声音,最大的形体,却反而没有形状。)——《道德经·第四十一章》1. 什么是多态首先思考什么是编程?程序的本质是按照既定规则接收指令并输出结果。程序的规则映射的是现实世界。现实世界是复杂的,因而程序也是复杂的。因此:编程的本质是对复杂度的管理。面对复杂问题,我们需要用抽象思维。“多态”正是基于抽象思维而设计的机制。即:多态...原创 2020-01-21 21:55:58 · 1210 阅读 · 0 评论