我是一只小小鸟
能力说明:
精通JVM运行机制,包括类生命、内存模型、垃圾回收及JVM常见参数;能够熟练使用Runnable接口创建线程和使用ExecutorService并发执行任务、识别潜在的死锁线程问题;能够使用Synchronized关键字和atomic包控制线程的执行顺序,使用并行Fork/Join框架;能过开发使用原始版本函数式接口的代码。
暂时未有相关云产品技术能力~
阿里云技能认证
详细说明运行时数据区域 java虚拟机在执行java程序的过程中会把他所管理的内存划分为若干个不同数据区域。有的区域随着虚拟机进程的启动而存在,而有的区域依赖用户的线程的启动与结束而建立和销毁。java虚拟机所管理的内存主要包括以下几个运行时的数据区域。
简单工厂模式 简单工厂其实不算是一个真正的“模式”,反而像一种编程习惯。如下面披萨的简单工厂类图:披萨商店将生产披萨的任务交给披萨工厂,只负责获取从工厂返回的披萨对象即可。 工厂模式 工厂方法模式定义 工厂方法模式定义了一个创建对象的接口,但由子类决定到底要实例化的类是哪一个。
观察者模式 让你的对象知悉现况 观察者模式可以说是JDK中使用最多的模式了,有了他,你将会消息灵通。 定义 观察者模式定义了对象之间的的一对多依赖,当一个对象发生变化时候,他的所有所有依赖者都会收到通知并自动更新。
策略模式 定义:策略模式定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于算法的客户。如上图,我们在开发一个Duck类时候,想要实现不同的鸭子类,如绿头鸭,飞鸭,还有橡皮鸭等,这些鸭子各有各的行为,也有共同的行为。
观看阿里云react入门视频的笔记
前言 2014年,Oracle发布了Java8新版本。这对java来说是一个里程碑式的版本。他最主要的改进就是增加了函数式编程的功能(为了解决java程序总是冗长的问题),或许会感到奇怪,函数式编程和并发似乎没什么关系,但是java中与并发相关的API的实现,却是以函数式编程的范式来实现的。
前言 最近在学习java并发,有些地方涉及到java虚拟机的知识,学习java这么久了,其实还没了解过Java虚拟机,这有点说不过去,所以先来学学习下java虚拟机的基础知识。 java虚拟机的概述 oracle官方定义的java技术体系包含以下几种: java程序设计语言 各种平台的java虚拟机 Class文件格式 java API类库 第三方java类库 我们通常所说的JDK(Java Development Kit),他是java开发的最小环境,主要就包含java程序语言设计,java虚拟机与java API类库。
在java开发中,我们经常会用到static与final关键字,看过很多遍,总是会忘记,下面来总结一下 static关键字的使用 1.修饰成员变量 用static关键字修饰的变量称之为静态变量。而静态变量与非静态变量的区别主要在于: 静态变量:被所有的对象所共享,在内存中只存在一个副本,只在类初次加载时被初始化。
如何将本地项目提交到git服务器中 1、初始化git git init 2、添加要提交的文件 git add 文件名(注:当要把整个项目都提交则用 git add . ,每次文件只要被修改,都要重新在add一次,不然commit只会提交add 暂存区里的内容) 3、完成提交 .
允许多个线程同时访问:信号量(Semaphore) 信号量为多线程协作提供了更为强大的控制方法。广义上说,信号量是对锁的扩展。无论是内部锁synchronized还是重入锁ReentrantLock,一次都只允许一个线程访问一个资源,而信号量指定多个线程访问同一个资源。
synchronized的功能的扩展:重入锁