当前位置: 首页 > news >正文

桐城市美丽乡村建设专题网站网站建设开题报告书

桐城市美丽乡村建设专题网站,网站建设开题报告书,网页美工设计多少钱,响应式网站的宽度一、Java集合 1、谈谈 Java 中 List、Set 以及 Map 的区别#xff1f; List#xff1a;有序的#xff0c;数据可以重复。。 Set#xff1a;无序的#xff0c;数据不能重复。 Map#xff1a;键值对存储。键是唯一的#xff0c;值不是唯一的。 2、谈谈 ArrayList 和 Link…一、Java集合 1、谈谈 Java 中 List、Set 以及 Map 的区别 List有序的数据可以重复。。 Set无序的数据不能重复。 Map键值对存储。键是唯一的值不是唯一的。 2、谈谈 ArrayList 和 LinkedList 的区别 ArrayList底层是基于数组的数组占用的是一个连续的内存空间。在新增和删除的时候效率低因为新增的时候需要有扩容判断在新增元素在删除的时候因为是连续的内存空间除了删除最后一个元素外删除其他元素都会是数组元素发生移动。查询和修改效率高可以直接根据index去直接进行定位。 LinkList底层是基于链表的占用的是分散的内存空间。在新增和删除的时候效率高。新增的时候不需要考虑扩容问题删除的时候只需要被删除的后一个节点的指向发生改变。查询和修改的效率低因为没有index下标 3、请说一下 HashMap 与 HashTable 的区别 1、父类不同HashMap是继承于AbstractMapHashTable是Dictionary的子类 2、HashMap的key和value可以是null但是HashTab不可以 3、HashMap是线程不安全的HashTab是线程安全的可以在多线程下操作但是JAVA后ConcurrentHashMap可以代替比TashTab的扩展性更好 4、HashMap速度快因为是线程不安全的HashTab速度慢 5、HashMap不能保证元素的次序不变因为每次扩容的时候会重新排序 6、HashMap初始大小16HashTab初始大小11 4、说一说 ArrayList 的扩容机制 ArrayLsit的初始容量是10每次超过的时候都*1.5 5、HashMap 的实现原理 HashMap底层是数组和链表的形式只要是为了解决数据和链表的痛点更好的进行增删改查。 首先是根据K来计算HashCode然后在确定数组的下标实际上就是NodeK,V[] 链表数据在添加数据的时候判断如果下标位置没有数据直接添加上如果有数据判断key的hash值和equalus相同则覆盖否则添加到链表的尾部 6、请简述LinkedHashMap的原理 底层是数据双链表的形式使用上和HashMap一样他是HashMap的子类。只是它是有序的而HashMap是无需的。因为底层是双链表所以内存占用会大一些 7、ConcurrentHashMap理解 ConcurrentHashMap比起Hashmap,是线程安全的比起HashTable是高效的使用分段锁。 二、JAVA多线程 1、Java 中使用多线程的方式有哪些 1、Thread重新run方法创建线程 2、实现Runnable接口传给Thread使用 3、ExecutorService 线程池来使用线程 4、FutureTaskExecutors 实现带有返回值的线程 2、说一下线程的几种状态 创建状态线程被创建的时候就是创建窗体 就绪状态线程执行的了strat方法调度的线程还没有把此线程设置为当前线程时 还没有执行run中的代码。线程重新启动的时候也会进度就绪状态 执行状态开始指定run方法中的代码了  就是执行状态 阻塞状态当调用sleep或者wait方法阻塞线程后线程会进入阻塞状态 死亡状态当调用stop方法后线程会停止运行进入死亡状态 3、如何实现多线程中的同步 volatile关键词 -- 某种简单的逻辑下, 是可以的只能修饰变量。保证变量的可见性 synchronized -- 重量级会遭成线程阻塞 4、Thread 中 run() 与 start() 方法的区别 run就是一个普通方法调用一下执行一次可以无限调用 start方法只能调用一次是启动线程的方法然后会自动执行run方法执行完毕后线程销毁。 5、说一下 synchronized 和 volatile 关键字的区别 1、synchronized重量级的可以修饰类、方法、变量。volatile轻量级只能修饰变量volatile本质就是告诉jvm 寄存器中的值是不准确的需要在主内存中读取 2、synchronized是具有原子性和可见性的volatile只具备可见性 3、synchronized会造成线程阻塞volatile不会 4、synchronized标记的变量会被编译器优化volatile不会 6、如何保证线程安全 根据具体的场景进行加锁volatile或者synchronized保证原子性可见性和有序性 7、谈谈 Java 线程中 notify 和 notifyAll 方法有什么区别 notify只会唤醒等待该锁的其中一个线程。notifyAll会唤醒等待该锁的所有线程。 8、什么是线程池 线程池就是线程的管理工具。 线程是为了执行任务的每个任务都需要重建一个线程执行完就销毁掉。 线程池会管理所有线程当某个线程空闲的时候会自动分配任务如果等待的时间久也能自动回收线程不够的时候也可以自动创建 9、谈一谈线程 sleep() 和 wait() 方法的区别 1、sleep是Thread的方法wait是Object的方法 2、sleep不释放锁wait会释放锁 3、sleep不需要Synchronizedwait需要Synchronized 4、sleep不需要唤醒wait需要唤醒 10、什么是悲观锁和乐观锁 乐观锁执行任务的时候默认同一时间不会出现其他线程一起处理任务的情况会处理完任务后看一下数据有没有被修改过 悲观锁执行任务的时候默认同一时间一定有其他线程一起处理任务在处理任务的时候会直接上锁 11、谈一谈 Java 线程安全的集合有哪些各有什么特点 hashTab加锁的hashMap方法上直接加synchronized concurrentHashMap会在具体的位置加锁使用分段锁保证效率是HashTab的升级
http://www.dnsts.com.cn/news/76845.html

相关文章:

  • 公司想建个网站怎么弄wordpress管理面板忘记密码
  • 绍兴手机网站建设网站开发的论文
  • 5000做网站网站定制开发 广州
  • 响应式网站是做多大尺寸wordpress 仪表盘美化
  • wordpress网站邀请码自己制作的网站如何发布
  • 都江堰市网站建设招标信息网哪个比较好
  • 网站标题分隔符原阳网站建设
  • 备案号怎么添加到网站太原网站建设价格
  • 一流的低价网站建设网页游戏大厅在线玩
  • 盈利网站网站上传用什么软件做视频教程
  • 5g对网站建设的影响企业查询软件排行榜
  • 怎样免费网站建设为什么不能安装wordpress
  • 做网站建设的有哪些分销系统网站
  • 手机网站首页怎么查一个网站是什么程序做的
  • 网站建设步骤及推广方法oa系统软件
  • 爱站网关键词排名旅游app页面设计图
  • iis 默认网站 删除名师工作室网站建设建议
  • 网站移动窗口代码四川人防工程建设网站
  • 一起做陶艺搬上网站中国的网站做欧美风
  • 做网站视频下载商品的销售网站总体设计
  • 网站开发模板下载网站搜索引擎友好性分析
  • 学校期末评语网站开发电子商务系统建设网站策划书
  • 做网站较好的框架深圳公司注册资金最低多少
  • 网站制作培训班dede 手机站 怎么获取跳转网站
  • 机构网站建设需要交费吗扑克直播软件app开发
  • 企业做网站的方案现在视频做网站晚了吗
  • 网站做rss+wordpress网站程序上传完
  • 怎么做视频解析网站吗wordpress 安全防护
  • 昆明seo公司网站做天猫网站设计难吗
  • 网站设计公司建设wordpress软件最低要求