Java
Mav6666
小菜鸟一枚!!!
展开
-
从零开始学Java多线程以及线程优化(二)
线程间的共享 单个、孤立的线程是没有价值的,多个线程只有在协同处理、共享数据、相互配合的情况下完成工作,才能体现多线程编程的巨大价值。 synchronized是Java内置的语言锁,synchronized关键字修饰了的方法和同步块可以确保多个线程在同一时刻只有一个线程处于方法个同步块中。 synchronized修饰的方法和块锁的是类的某一个对象,针对的是不同线程的同一个对象。 加了s...原创 2020-04-25 14:45:14 · 175 阅读 · 0 评论 -
从零开始学Java多线程以及线程优化(一)
基础概念 一、CPU 理论上CPU的核心数与线程数是1:1的,比如4核的CPU,只能同时执行4个任务,但Intel推出了超线程技术后,它把一个物理的CPU通过超线程技术模拟成了2个逻辑CPU,这样核心数与线程数就了1:2,可同时执行的任务数提高了一倍,这就是四核八线程的由来。 现在又有一个问题,既然4核的CPU最多也才能同时执行8个线程,可为什么我们平时开发中new T...原创 2020-04-23 23:26:49 · 361 阅读 · 0 评论 -
Java 关于反射使用学习笔记
前言 最近学习了Java反射知识,为了加强学到的知识,从今天开始培养自己写博客的习惯,记录自己学习的一些理解。 说到反射,我们都知道新建一个对象最常用的方法就是new一个,还有两种方法,这两种都是通过反射实现的,首先写一个简单的类: public class Stu { private String name; int age; public Stu() {...原创 2020-04-22 13:21:44 · 155 阅读 · 0 评论 -
Java动态代理类及对象的生成流程
Java的代理分为静态代理和动态代理,静态代理因为违反开闭原则,一次只能代理一个对象,缺少实用性,所以一般用的很少,所以只记一下动态代理。 动态代理定义:为其它对象提供一种代理以控制对这个对象的访问控制;在某些情况下,客户不想或者不能直接引用另一个对象,这时候代理对象可以在客户端和目标对象之间起到中介的作用。 举一个实际的例子,比如我想要买一包烟,但生产这包烟的是卷烟厂,我不可能直接去卷烟厂去...原创 2020-04-22 13:19:21 · 2236 阅读 · 1 评论