![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 57
jack-life
后端开发,java、go语言
展开
-
java字节码增强技术实现过程
什么是Instrumentation?查阅java api可知,软件包 java.lang.instrument 的描述 提供允许 Java 编程语言代理监测运行在 JVM 上的程序的服务。监测的机制是对方法的字节码的修改。 包规范在启动 JVM 时,通过指示代理类及其代理选项 启动一个代理程序。该代理类必须实现公共的静态premain 方法,该方法原理上类似于 mai...原创 2017-08-04 08:31:23 · 1915 阅读 · 0 评论 -
JAVA多线程的控制JAVA 5.0
在Java 5.0之前启动一个任务是通过调用Thread类的start()方法来实现的,任务的提于交和执行是同时进行的,如果你想对任务的执行进行调度或是控制 同时执行的线程数量就需要额外编写代码来完成。5.0里提供了一个新的任务执行架构使你可以轻松地调度和控制任务的执行,并且可以建立一个类似数据库连接 池的线程池来执行任务。这个架构主要有三个接口和其相应的具体类组成。这三个接口是Executor...转载 2018-04-11 10:11:32 · 116 阅读 · 0 评论 -
java进阶(三)多线程开发关键技术
本文将介绍Java多线程开发必不可少的锁和同步机制,同时介绍sleep和wait等常用的暂停线程执行的方法,并详述synchronized的几种使用方式,以及Java中的重入锁(ReentrantLock)和读写锁(ReadWriteLock),之后结合实例分析了重入锁条件变量(Condition)的使用技巧,最后介绍了信号量(Semaphore)的适用场景和使用技巧。本文转发自技转载 2018-02-05 16:42:37 · 178 阅读 · 0 评论 -
Java进阶(二)当我们说线程安全时,到底在说什么
提到线程安全,可能大家的第一反应是要确保接口对共享变量的操作要具体原子性。实际上,在多线程编程中我们需要同时关注可见性、顺序性和原子性问题。本篇文章将从这三个问题出发,结合实例详解volatile如何保证可见性及一定程序上保证顺序性,同时例讲synchronized如何同时保证可见性和原子性,最后对比volatile和synchronized的适用场景本文转发自技术世界,原文链接转载 2018-02-05 16:44:19 · 157 阅读 · 0 评论 -
okhttp实现 httpget 和 httppost 的java实现
okhttp实现 httpget 和 httppost 的java实现原创 2017-12-01 18:10:42 · 567 阅读 · 0 评论 -
http java实现
一个简单的http get方法的实现:1 定义一个httpClient2 定义 httpGet3 通过client得到返回的结果response原创 2017-12-01 18:06:04 · 248 阅读 · 0 评论 -
学习Java8--stream
1 为什么引入流先从一个例子开始,看看为什么在Java8中要引入流(Stream)?比如实现这么一个需求:在学生集合中查找男生的数量。传统的写法为:public long getCountsOfMaleStudent(List students) { long count = 0; for原创 2017-10-26 19:34:48 · 227 阅读 · 0 评论 -
学习Java8--Lambda表达式
1 为什么使用lambda表达式先看几个Java8之前常用的例子创建线程并启动(不适用Lambda 表达式)public class Worker implements Runnable { @Override public void run() { for (int i = 0; i < 10; i++) { dowork(i)原创 2017-10-26 17:08:34 · 214 阅读 · 0 评论 -
java对象和json的相互转换--(1) 使用@JsonSerialize对javabean进行json格式化
以json格式输出数据是常用的方式,这次记录下项目中使用的json格式化方法,使用的jar包为com.fasterxml.jackson.core:jackson-databind,对应的maven依赖为 com.fasterxml.jackson.core jackson-databind ${f原创 2017-10-24 08:48:06 · 5478 阅读 · 0 评论 -
Java线程池快速学习教程
Java线程池快速学习教程转载 2017-11-02 16:15:02 · 234 阅读 · 0 评论 -
Java面试宝典2017版
一. Java基础部分.................................................................................................. 71、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?.............................................转载 2017-09-11 23:33:08 · 1834 阅读 · 1 评论 -
培训总结
培训总结1 通过对idea能开发工具的实际培训,掌握了这些开发工具的使用以及单元测试等项目中常用的一些工具。1 对git提交代码的流程进行了学习并实践,能实际应用于团队工作中2 学习到了docker的基本命令以及操作,并结合实际例子进行操作,掌握了docker镜像的制作和使用3 通过Java实战教程,熟悉了java中的常见数据结构,提高的Java技能原创 2017-09-10 16:02:40 · 254 阅读 · 0 评论 -
java中静态和非静态方法之间的相互调用
早上看项目代码中有一个方法中直接调用了类中的方法,由于刚入门java不久,还以为除了可以调用静态方法外不能调用非静态方法,网上查了下没找到合适的答案,就自己简单的进行了代码实现来验证。总结到的结论: 1 java类中的静态方法 只能调用类中的静态方法; 2 java类中的非静态方法可以调用类中的非静态方法和静态方法。下面是具体的代码说明。原创 2017-09-25 10:30:28 · 11245 阅读 · 2 评论 -
Java序列化与反序列化
Java序列化是指把Java对象转换为字节序列的过程;而Java反序列化是指把字节序列恢复为Java对象的过程。原创 2017-09-13 09:05:56 · 202 阅读 · 0 评论 -
Java反射学习
1 Class类 类类型 //任何一个类都是Class的实例对象,这个实例对象有三种表示方式//第一种表示方式--->实际在告诉我们任何一个类都有一个隐含的静态成员变量classClass c1 = Foo.class;//第二中表达方式 已经知道该类的对象通过getClass方法Class c2 = foo1.getClass()原创 2017-08-24 23:19:41 · 169 阅读 · 0 评论 -
Java 反射由浅入深 | 进阶必备
一、Java 反射机制参考了许多博文,总结了以下个人观点,若有不妥还望指正:Java 反射机制在程序运行时,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性。这种 动态的获取信息 以及动态调用对象的方法 的功能称为 java 的反射机制。反射机制很重要的一点就是“运行时”,其使得我们可以在程序运行时加载、探索以及使用编译期间完全未转载 2017-08-14 15:20:59 · 277 阅读 · 0 评论 -
解决maven删除和重新安装的问题
1 linux虚机上自带的maven和maven2,但是版本太低,首先查找了两个版本的目录,在 cd /etc/ 中找到,通过rm -rf 命令删除;cd /usr/share/ 在里面删除对应的maven, 2 然后通过 vi ./.bashrc 配置环境变量 export MAVEN_HOME=/root/apache-maven-3原创 2017-08-21 09:10:32 · 8837 阅读 · 0 评论