文章目录List集合ArrayListVectorLinkedListSet集合HashSetLinkedHashSetMap集合Map 接口的遍历方式HashMapHashtablePropertiesTreeSetTreeMap开发中如何选择集合实现类Iterator遍历Collection工具类 List集合集合类中元素有序(即添加顺序和取出顺序一致)、且可重复List集合中的每个元素都有
转载 2023-09-28 12:46:22
53阅读
前言java动态代理主要有2种,Jdk动态代理、Cglib动态代理,本文主要讲解Jdk动态代理的使用、运行机制、以及源码分析。当spring没有手动开启Cglib动态代理,即:<aop:aspectj-autoproxy proxy-target-class="true"/>或@EnableAspectJAutoProxy(proxyTargetClass = true),默认使用的就
项目层级划分1.Dao层:持久层,主要与数据库交互DAO层首先会创建Dao接口,接着就可以在配置文件中定义该接口的实现类;接着就可以在模块中调用Dao的接口进行数据业务的处理,而不用关注此接口的具体实现类是哪一个类,Dao层的数据源和数据库连接的参数都是在配置文件中进行配置的。2.Entity层:实体层,数据库在项目中的类主要用于定义与数据库对象应的属性,提供get/set方法,tostring方
1. 概述  我们常说的Java虚拟机具有很好的跨平台性,之所以强调所谓的跨平台性是因为不同的系统底层架构是会有区别的,而Java虚拟机的跨平台性就是它帮助我们把不同系统的底层区别给KO掉了,使得我们通过Java虚拟机编写的代码可以忽略不同平台底层的区别。而这其中关键的一点就是Java虚拟机的Java内存模型,内存模型其实就是JVM内部自己设计了一套规则,这套规则会规定不同线程之间信息同步的规则、
场景有探索欲的同学,应该会跟我一样,在看JDK源码时,跟到最后,会出现native方法,类似下面这个方法/** * Gets the platform defined TimeZone ID. **/ private static native String getSystemTimeZoneID(String javaHome); 复制代码看到这个native ,说明
01打法无论是什么互联网赚钱项目,都有自己的一套逻辑和打法。无论你是小白还是老鸟,如果想要在实操项目上赚到钱,持续赚到钱,都离不开逻辑和打法。成熟的体系、清晰的逻辑、完善的打法,可以形成规模化,流水化操作,才能在面临批量放大时,轻松应对。02项目就拿自媒体项目为例,很多小白都想破脑袋不知道怎么去写爆款的微头条,其实,经过实操,两种技巧就可以让你快速写出爆款。一个技巧是对标,一个技巧是趁热。对标,是
文章目录一 集合1.1 Iterable与Iterator1.2 Collection接口1.2.1 ArrayList1.2.1.1 重要参数1.2.1.2 构造器1.2.1.3扩容过程1.2.1.4 增加方法1.2.1.5 总结1.2.2 Vector1.2.2.1 重要参数1.2.2.2 构造器1.2.2.3 扩容过程1.2.2.4 总结1.2.3 LinkedList1.2.3.1 重要
转载 2023-07-18 22:00:10
106阅读
1.volatilevolatile关键字作用:Java内存模型确保了所有线程看到的被声明为volatile的字段的修改是一致的。JVM层面:如果对volatile变量进行写操作,JVM会向处理发送一条Lock前缀的指令,使得这个变量所在的cache行的数据写回到内存中。Lock前缀指令的执行会声言处理器的LOCK#信号,该信号确保在声言期间,处理器可以独占任何共享内存(锁住总线)。计算机层面:根
转载 2023-08-13 18:05:42
52阅读
1、谈谈你对java的理解平台无关性GC语言特性面向对象类库异常处理2、java如何实现平台无关性.java文件javac编译,生成字节码.class文件jvm解析,转换成特定平台的执行指令java源码首先被编译成字节码,再由不同平台的jvm进行解析,java语言在不同的平台上运行时不需要重新进行编译,java虚拟机在执行字节码时,把字节码转换成具体平台上需要的指令3、jvm如何加载.class文
转载 2023-07-20 17:23:55
49阅读
首先给自己一个介绍,本人是一个蠢笨蠢笨的女程序员,由于有一天突然觉悟了,想在学习的过程中写一些笔记,以前一直不敢开始这个事情,因为我害怕写错了,误导了别人,现在还是害怕,如果真的误导了同行,你们也轻点喷我 哈哈哈接下来进入正题,今天来记录一下我自己学到的东西,Java相关的硬件知识,说到这个我们先谈谈计算机的最重要的组成部分,跟我们写程序联系比较紧密的部分:先来看看计算机的组成,如下图:一、cpu
JVM体系结构JVM是一种解释执行class文件的规范技术。JVM体系结构我翻译的中文图:中文图 类装载器子系统在JVM中负责装载.class文件(一种8位二进制流文件,各个数据项按顺序紧密的从前向后排列, 相邻的项之间没有间隙,经编译器编译.java源文件后生成,每个类(或者接口)都单独占有一个class文件)。 运行时数据区 方法区当JVM使用类装载器定位clas
1.io流的概念把这些不同类型的输入、输出源抽象为流(Stream),其中输入或输出的数据称为数据流(Data Stream),用统一的接口来表示;2.io流的分类按照流向分:输入流:读取外部数据(磁盘、光盘等存储设备的数据)到程序(内存)中;输出流:把程序(内存)中的内容输出到磁盘、光盘等存储设备中;深入java io底层(上)-1.jpg (29.12 KB, 下载次数: 0)2021-1-1
一、Collections:它的出现给集合操作提供了更多的功能。这个类不需要创建对象,内部提供的都是静态方法。Collection:单列集合|--List 有序,可重复 |--ArrayList 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 |--Vector 底层数据结构是数组,查询快,增删慢 线程安全,效率低 |--LinkedList 底层数据结构是链表
CPU的制作过程CPU是如果制作的CPU的原理汇编语言的执行过程汇编语言的本质:机器语言的助记符  其实就是机器语言执行过程 :计算机通电->cpu读取内存中的程序(电信号输入)->时钟发生器不断震荡通电->推动cpu内部一步一步执行(执行多少取决于指令需要的时钟周期)->计算机完成->写回(信号)->写给显卡输出(图形)计算机的组成CPU的组成PC
JAVA 8 的新特性Java 8 早在2014年3月份就已经有了,然而这是一次大的更新,如今的安卓框架就在使用java 8 的 Lambda表达式,如今正被越来越多的人发现它的优点与好处,也成为了未来的趋势。Java 8 的优点:速度更快代码更少(增加新语法Lambda 表达式)强大的Stream API便于并行最大化减少空指针异常 Optional首先速度更快体现在很多方面,比如对于底层的数据
转载 2023-07-20 23:45:03
90阅读
Java 技术包含的所有内容:1、Java技术体系2、Java 一次编译,到处运行Java技术的核心就是Java虚拟机,因为所有的Java程序都在虚拟机上运行。Java程序的运行需要Java虚拟机、Java API和Java Class文件的配合。Java虚拟机实例负责运行一个Java程序。当启动一个Java程序时,一个虚拟机实例就诞生了。当程序结束,这个虚拟机实例也就消亡。 Java支持平台无关
转载 2023-11-19 18:24:06
40阅读
一、Java底层基础题1、SpringMVC的原理以及返回数据如何渲染到jsp/html上?答:Spring MVC的核心就是DispatcherServlet , 一个请求经过DispatcherServlet ,转发给HandlerMapping ,然后经反射,对应 Controller及其里面方法的@RequestMapping地址,最后经ModelAndView和ViewResoler返回
转载 2023-07-17 20:52:43
75阅读
1.多线程的底层实现(1)首先回答什么是线程1个进程要想执行任务,必须得有线程.线程是进程的基本执行单元,一个进程(程序)的所有任务都在线程中执行(2)什么是多线程1个进程中可以开启多条线程,每条线程可以并行(同时)执行不同的任务。多线程的作用:更新显示UI界面、处理用户触摸事件。(3)Mach是第一个以多线程方式处理任务的系统,因此多线程的底层实现机制是基于Mach的线程。(4)开发中实现多线程
汇编语言(机器语言)的执行过程 汇编语言的本质:机器语言的助记符 其实它就是机器语言计算机通电 -> CPU读取内存中程序(电信号输入)->时钟发生器不断震荡通断电 ->推动CPU内部一步一步执行(执行多少步取决于指令需要的时钟周期)->计算完成->写回(电信号)->写给显卡输出(sout,或者图形)CPU的基本组成PC     
转载 2023-08-09 12:22:58
35阅读
Java – Map的底层实现 一. 特性 map的特点是,无序,键值不能重复(如果重复,就覆盖value),利用键值寻找对象 二.map的实现(数组 + 链表) 本节课的目的是为了用哈希码和“数组+ 链表”的方式自己实现map 在01版本中,因为每次要查找键值是否重复(因为map的键值是不可重复的),都需要遍历数组,效率很低,因此,采用使用哈希码的方式定位,但因为数组的长度是有限的,而
转载 2023-06-15 10:34:02
101阅读
  • 1
  • 2
  • 3
  • 4
  • 5