![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 80
_程序猿滴滴
Drive Maserati to Code
展开
-
javacore2
19、Java Core之字节码与内部类原理与操作系统原理 二字节码解释如下:下图右边红字 讲 的是 ,如何构造内部类对象。上面的程序,如果把 static int i = 100; 去掉呢? 那就是访问外部类的非静态属性了。和上面小程序的字节码的主要区别如下:所以下面总结一下:再看看匿名类...原创 2021-01-13 17:16:07 · 120 阅读 · 0 评论 -
随笔
2020/12/21 每日一题使用微服务存在的问题以及解决办法?有一个回答大家参考下优点:(1)每个服务直接足够内聚,代码容易理解(2)开发效率高,一个服务只做一件事,适合小团队开发(3)松耦合,有功能意义的服务。(4)可以用不同语言开发,面向接口编程。(5)易于第三方集成(6)微服务只是业务逻辑的代码,不会和HTML,CSS或其他界(7)可以灵活搭配,连接公共库/连接独立库缺点:(1)分布式系统的责任性(2)多服务运维难度加大。(3)系统部署依赖,服务间通信成本,数据一致 ,系原创 2020-12-21 19:40:48 · 114 阅读 · 0 评论 -
进程内高并发(二)
02_从一则招聘谈起注意学习方法,时间多就好好理解,真正理解透彻,做到见名知意时间不多,直接背,而且老马也建议直接背,知道吗? 但是据我的面试经验,年限少的可行,年限多的不可行,直接问深入或者实操心得,一问就懵逼,还记得腾讯互金的二面吗? 问哨兵的使用细节,一问就露馅儿。03_线程的历史-CPU性能压榨的血泪史1、单进程人工切换纸带机2、多进程批处理多个任务批量执行3、多进程并行处理把程序写在不同的内存位置上 来回切换。4、多线程一个程序内不同任务的来回切换selector原创 2020-11-19 01:06:21 · 209 阅读 · 0 评论 -
javacore1
2、Java Core 之 字节码与类创建过程如图和代码把Hello类加载到方法区之后,是不是要执行main方法?执行main方法之后就压了一个栈进来。当执行碰到new关键字的时候,会发生啥? 声明对象看图中第 1 2 3步。然后第2步单独拿出来讲:看下堆内存中创建对象的时候执行顺序:(加载的是分为,加载,验证,准备,解析,初始化,复习一下儿)1、如图2、如图对堆内存中开辟的对象的结构进行讲解:对象 = (头部信息 + 实例信息)头部信息:(有三个标志位)1、有填充值2、持有指原创 2020-11-11 01:05:16 · 319 阅读 · 2 评论 -
JVM
JVM可以以下面这个博客为大纲,这个博客写的确实好 http://www.cnblogs.com/zuoxiaolong/category/508918.html写在前面: 1.关系是包含关系: JDK 包含 JRE 包含 JVM。。 要开发java程序的话那必须要有JDK,如果只是运行的话,那有JRE(JAVA运行时环境)就够了。 装JDK的时候,还会让你安装一下JRE的。。 ...原创 2018-03-30 12:47:07 · 232 阅读 · 0 评论 -
高并发2
17、线程池public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit,...原创 2018-04-19 22:55:03 · 162 阅读 · 0 评论 -
分布式
1、ZK杂知识点ZK更像是一个API的接口,很多开发分布式的程序都要用到。它是开发其他分布式系统的基石,它更像一个API,一个LIB包,它并不算一个完整的产品,别人使用ZK来开发自己新的分布式系统。 理清这个概念。HBase是强依赖ZK的,而hadoop的HA也是依赖ZK的,现在很多的分布式系统都依赖于ZKLinux要求:会安装软件包,配网络,hostname修改等等。...原创 2018-04-20 20:45:27 · 147 阅读 · 0 评论 -
spring注解开发
这里写自定义目录标题spring注解开发spring注解开发02、组件注册-@Configuration&@Bean给容器中注册组件视频的这一节,先看看核心容器的功能,也就是IOC。spring认为所有的组件都应该放在IOC容器中,组件之间的关系通过容器进行自动装配。...原创 2018-10-21 12:01:04 · 170 阅读 · 0 评论 -
持久化框架
一、JDBC – J2EE的一部分无论是mybatis还是hibernate,都要去想他们是怎么替代JDBC的,每一步为啥这么替代 之前:要写某一个数据库的, 就要了解这个数据库专门的API,JDBC是JAVA访问数据库平台的统一接口,统一了这个接口之后就会非常的方便。 但是缺点:JDBC这个层次的抽象还不是特别完美,JDBC必须要把sql语句写到程序里面去(但是不同的数据库之间的s...原创 2018-02-13 14:45:31 · 1238 阅读 · 0 评论 -
高并发
一、高并发1、线程执行路径,可以放在不同的CPU里面同步运行。 继承Thread,实现Runnable接口 2、基本的线程同步:sychronized 加锁 1)自己new一个当锁的对象。 要执行下面代码的时候首先要拿到一把锁,拿到o这把锁。申请锁的时候,锁的信息是记录在堆内存对象里的。 线程1把锁释放了,线程2才能申请这把锁。发现这个锁被别的线程锁了,这个线程就执行不了,所以这叫...原创 2018-01-30 15:59:26 · 259 阅读 · 0 评论 -
异常(父类对象ani instanceof是不是 子类Cat 的实例)
类型为什么需要 java中错误的信息也会被包装到对象里面。对象就是包装数据,组织数据的,那错误也是数据。 大部分异常都有这两个构造器 string s表示详细消息。 Throwable类 Error(错误)不需要程序猿处理#checked exception 被编译器已检查过的exception,必须要捕获,否则编译通不过 Thread.sleep(...原创 2017-11-11 12:28:31 · 590 阅读 · 0 评论 -
filter就是调用test,forEach分别调用accept,collect把流生成一个list,map()返回一个Stream
6原创 2017-11-12 23:36:09 · 515 阅读 · 0 评论 -
容器和HashMap底层 Iterator
容器左边是一个一个往里扔,右边是一对一对往里扔 容器这一章,很多容器的底层实现还是数组。List常用方法List是有序可重复,,,重复的都可以放进去,什么叫重复。就是两个元素互相equals。。/** * 测试List中的基本方法 * ArrayList顾名思义:底层是基于数组来实现的。 * */public class Test01 { publ...原创 2017-12-14 22:51:19 · 327 阅读 · 0 评论 -
泛型--方法:将泛型参数列表置返回值前(注意格式)
引入关于泛型这篇博客讲的还可以: http://blog.csdn.net/old_memories/article/details/78079422 还有: 《泛型超详细解读(一):泛型基础》http://blog.csdn.net/jeffleo/article/details/52245870 《 泛型超详细解读(二):super和extend》http://blog.csdn....原创 2017-12-13 23:32:15 · 3059 阅读 · 0 评论 -
socket和IO流
socket加一个程序,java默认是双字节编码,它是utf-16be编码,中英文都占两个字节/** *解析java字符串,有中文英文,把它以多种编码方式解析成字节序列( s.getBytes()), * 再来分析 中文英文 所占用的字节数。。。。。,看编码的区别 */public class EncodeDemo { public static void main(S...原创 2018-01-14 21:38:22 · 2369 阅读 · 0 评论 -
内存分析和常用类
马士兵的内存解析:基本类型占一块内存,引用类型占两块内存。 所有new出来的东西都在堆内存(heap segment)里面。 堆内存:运行期间动态分配内存,因为事先不知道分配多大,只有在运行(而不是编译)期间才知道分配多大。 方法只是一段代码(在 code segment里面),它只有被调用的时候才会占用内存。 引用 — 一小块内存指向一大块内存。 局部变量(c1)分配在栈内存...原创 2017-11-06 23:08:51 · 368 阅读 · 0 评论 -
第三方组件
构建这些微服务时,使用了很多开源的第三方组件,本文档将对这些第三方组件进行解释,讲解如何使用这些第三方开源组件来进行相关的开发1、docker – build ship run好处:快速的持续集成,服务的弹性伸缩,部署简单解放运维,而且为企业节省了机器资源,目前已经有很多公司在生产环境中大规模的使用docker。1、docker是什么?不怎么好描述,下面简要说说: docke...原创 2018-01-26 11:21:45 · 2472 阅读 · 0 评论 -
线程--继承类实现了静态代理模式
1、概述 (看最后一个图) 进程包含线程;线程是进程的一部分,是轻量级的进程,是不同的执行路径。 多线程:一条路径不能满足要求,另开辟一条路径。 真正的多线程是有多个cpu,有多核。cpu调度哪个程序哪段代码有个调度,调度过程中有个时间片(纳秒级别)。把线程a挂起,再执行线程b,时间片非常的短,看起来像是a和b同时在执行。 什么时候需要执行多线程? main方法(主线程原创 2017-10-23 23:41:40 · 306 阅读 · 0 评论 -
懒汉延迟加载&设计模式&反射&注解
单例注意:尚学堂的所有源码和PPT,官网上都有。1、 2、饿汉类加载器加载这个类的时候就把对象给new出来,初始化静态属性instance,不管后面有没有使用这个类(要不要这个实例)也不管,上来就new好 缺点:有时候类加载了,但是后面根本就没用instance这个对象(没有调用getInstance去用对象),那就白new了,所以很多时候还是希望延迟加...原创 2017-10-25 15:52:34 · 666 阅读 · 0 评论