
JavaBasic
文章平均质量分 92
zFM0016
这个作者很懒,什么都没留下…
展开
-
java学习-节点5
第十八天线程池之前介绍了线程池如何使用,现在来自己实现一个线程池。首先考虑线程池的主要功能,把阻塞队列中的任务拿来给线程做?这个怎么实现呢?难道线程里的runnable可以替换的吗?打开threadpoolexecutor的源代码,发现其实是单次调用了取出来的runnable的run()来实现的…意思就是队列中的runnable压根就没有挂载到线程上来。然后再考虑初始情况,0线程,新进任务进来,肯定是要新建线程的,然后开始执行run()。新任务不断进来,直到到达核心线程数,接下来应该将任务放入阻塞原创 2021-03-02 22:00:30 · 351 阅读 · 0 评论 -
java学习 connect(1,2,3,4)
学习java断断续续加起来已经有快三十天的时间了,之前的博客按照时间顺序写的,今天对其进行一次整合。框架刚好之前做学习ppt汇报的时候做了几张图,这里展示一下。基础编程语法这一块基本就很简单了,有编程基础的人随便看看就能搞定。java是一个以面向对象编程为目的而开发的语言,以C++为基础,摒弃了C++中许多繁琐的操作,并按照面向对象的思想在底层进行优化。唯一有点困惑的地方大概就是java的引用概念,这一点其实在了解了java的运行机制,也就是JVM后,也变得很容易理解了。难点1:继承访问原创 2021-02-26 21:27:42 · 1007 阅读 · 0 评论 -
Java学习-节点4
第十四天多线程学习由于博主是转行搞开发的,对多线程并行并不太熟悉,之前从操作系统的书上看了一些,但是没有实际编写过,也不太清楚java里多线程是如何实现的。今天来动手编程探究一下java具体如何实现多线程。sleep在Thread类中有一个sleep函数,用于将当前线程等待,在java API中有这样一句话线程不会丢失任何显示器的所有权。 (翻译问题,The thread does not lose ownership of any monitors原意应该是说线程不会丢失监视器的所有权,应该是原创 2021-01-28 22:36:20 · 327 阅读 · 0 评论 -
Java学习-节点3
第十一天、十二天、十三天2D游戏开发基础这几天一直在完善自己的基于java的简单2D游戏引擎。由于我也不知道真正的2D游戏引擎都包含哪些模块,只能按照自己的理解和以前的一些经验去编写。首先,结合之前的线程知识,我们的2D引擎至少需要一个线程,用来逐帧绘图。这里可以使用sleep人为控制每秒帧率为多少,当cpu无法满足时,便时刻不停的计算,不使用sleep。不过该实现有些复杂,于当前程序用处不大,所以在线程中使用固定时间sleep。结合之前的知识,要把游戏内所有的物体全部绘制到画面上,需要遍历每一原创 2021-01-26 16:33:13 · 302 阅读 · 0 评论 -
Java学习-节点2
第六天自己编写一种容器对比ArrayList,要求实现以下功能:add(value)add(value,index)get(index)clear()erase(index)1.首先容器是一种泛型工具,java中泛型跟C++差不多,直接拿来用就可以了。2.思考ArrayList如何实现自动改变大小的功能。之前在C++的书上只说了容器会自动分配内存空间,并随着自身大小调节新分配的内存空间。打开ArrayList源码,发现容器将内容都存储在数组中,不断在内存中分配一个大于现容量的固定数组,并原创 2021-01-09 21:59:52 · 303 阅读 · 0 评论 -
java学习-节点1
java学习笔记@TOC第一天(java初学)你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。面向对象java是一个以面向对象编程为目的而开发的语言,以C++为基础,摒弃了C++中许多繁琐的操作,并按照面向对象的思想在底层进行优化。java的类大致与C++相同,不同的是java文件以类为主体,编译链接时也可能以类为基础。类的编写:public class 类名{}这里原创 2021-01-06 22:04:51 · 464 阅读 · 3 评论