深入Java内存模型

  • Post author:
  • Post category:java

本文由 ImportNew - 陈 晓舜 翻译自 gvsmirnov 。欢迎加入 Java小组 。转载请参见文章末尾的要求。 你可以在网上找到一大堆资料让你了解JMM是什么东西,但大多在你看完后仍然会有很多疑问。happen-before是怎么工作的呢?用volatile会导致缓存的丢弃吗?为什么我们从一开始就需要内存模型? 通过这篇文章,读者可以学习到足以回答以上所有问题的知识。它包含两大部分:…

继续阅读 深入Java内存模型

java 序列化 transient_Java序列化1:序列化、反序列化和transient关键字的作用

  • Post author:
  • Post category:java

标签: 网上讲Java序列化的文章很多,感觉很多都讲得不全,这篇文章希望可以全面地剖析Java的序列化机制。为什么要进行序列化和反序列化?我们写了一个Object,但那是Java虚拟机堆内存里面的东西,利用Object进行网络通信、IO操作的时候怎么会认识Java堆内存里面的东西?所以,需要序列化和反序列化机制的保障。 序列化:将一个对象转换成一串二进制表示的字节数组,通过保存或转移这些字节数据来…

继续阅读 java 序列化 transient_Java序列化1:序列化、反序列化和transient关键字的作用

java实现TCP协议文件传输

  • Post author:
  • Post category:java

/** * 需求:将指定文件从D盘目录d:\1下移动到d:\2下 * @param args * @throws IOException */ public static void main(String[] args) throws IOException { //1. 建立输入流和输出流 FileInputStream fis = new FileInputStream("d:\\1\\1.p…

继续阅读 java实现TCP协议文件传输

JavaScript实现二级联动(省市、楼栋)

  • Post author:
  • Post category:java

二级联动在实际需求中使用的非常多,比如省市,楼栋等,所以我们应当也应该掌握这些前端知识。 实现效果: 利用JavaScript实现二 级联 动 要实现JavaScript二级联动效果,首先要确定需要哪些技术: 二维数组 for in循环 new Option(text,value,true,true) add(option,null) onchange() 表单事件 HTML代码: <!--…

继续阅读 JavaScript实现二级联动(省市、楼栋)

java动态代码,将文本运行为Java代码。

  • Post author:
  • Post category:java

原理:将文本写到文件,用Java的类加载动态运行。 1.使用jdk自带rt.jar中的javax.tools包提供的编译器(也可以用runtime运行cmd)进行编译java源文件。 2.重写类加载器达到加载指定文件夹下的类。 import javax.tools.JavaCompiler; import javax.tools.ToolProvider; import java.io.File;…

继续阅读 java动态代码,将文本运行为Java代码。

Java8 lambda表达式,Comparator.comparing().thenComparing()报错

  • Post author:
  • Post category:java

最近更新 加上了部分我自己对问题的理解,同时附件信息中贴上了一个我最近在公司内部分享的PPT,里面详细讲述了函数式接口、Lambda表达式、Stream、Optional等JDK8的新特性。有需求的同学可以下载参考一下。 引子 在对集合进行操作的时候,我喜欢用Java8的新特性——Stream/lambda表达式等。最近,在项目中就碰到了一个怪异的问题,这里记录下来,并将解决方式分享给大家。 问题…

继续阅读 Java8 lambda表达式,Comparator.comparing().thenComparing()报错

JSON parse error: Cannot deserialize value of type `java.time.LocalDateTime` from String “2023-03-11

  • Post author:
  • Post category:java

问题描述 在做项目时遇到问题: 后台报错: Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize value of type java.time.LocalDateTime from String “2023-03-11 0…

继续阅读 JSON parse error: Cannot deserialize value of type `java.time.LocalDateTime` from String “2023-03-11

【JavaWeb】– idea下使用TomCat新建javaweb项目

  • Post author:
  • Post category:java

Tomcat是web应用服务器,也是一个Servlet/JSP容器。Tomcat作为 Servlet容器,负责处理客户请求,把请求传送给servlet,并将servlet的响应传送回给客户。 下面使用idea2022企业版演示,其他版本操作可能有点不同。(注意:社区版默认没有web需要插件) 1、下载TomCat 注意:路径不能有中文或空格。 2、idea新建项目,添加框架 右键项目名称,添加框架…

继续阅读 【JavaWeb】– idea下使用TomCat新建javaweb项目

Java 优先队列等数据结构中比较器的正确使用

  • Post author:
  • Post category:java

本人学习Java不久,在刷题过程中,对优先队列中大根堆,小根堆的使用有些不熟练,在这里做一个简单的学习记录。 单元素优先队列 首先,我们知道优先队列默认是小根堆,也就是堆顶是最小的元素,我们做个简单的试验: PriorityQueue<Integer> heap = new PriorityQueue<>( (n1,n2) -> n1-n2 //这一句加不加结果是一样…

继续阅读 Java 优先队列等数据结构中比较器的正确使用

JAVA  40道公司笔试题(选择)

  • Post author:
  • Post category:java

1. 下列哪一种叙述是正确的( D ) A . abstract 修饰符可修饰字段、方法和类 B . 抽象方法的 body 部分必须用一对大括号 { } 包住 C . 声明抽象方法,大括号可有可无 D . 声明抽象方法不可写出大括号 2. 如下代码 public class Test { public int aMethod() { static int i = 0; i ; return i; …

继续阅读 JAVA  40道公司笔试题(选择)