07 2018 档案

摘要:JIT是just in time,即时编译技术。使用该技术,能够加速java程序的执行速度。下面,就对该技术做个简单的讲解。 首先,我们大家都知道,通常javac将程序源代码编译,转换成java字节码,JVM通过解释字节码将其翻译成对应的机器指令,逐条读入,逐条解释翻译。很显然,经过解释执行,其执行 阅读全文
posted @ 2018-07-31 16:50 筱筱的春天 阅读(1096) 评论(1) 推荐(0) 编辑
摘要:javac是java语言编程编译器。全称java compiler. javac工具读有java语言编写的类和接口的定义,并将它们编译成字节代码的class文件。 阅读全文
posted @ 2018-07-31 16:45 筱筱的春天 阅读(1205) 评论(0) 推荐(0) 编辑
摘要:因为偏向锁,锁住对象时,会写入对象头相应的标识,我们先把对象头(官方叫法为:Mark Word)的图示如下(借用了网友的图片): 通过上面的图片,我们可以知道,对象处于偏向锁时,mark word中的偏向锁标记为1,锁标志位为01;下面是分析过jvm源码(biasedLocking.cpp)解析的偏 阅读全文
posted @ 2018-07-30 18:04 筱筱的春天 阅读(3496) 评论(2) 推荐(1) 编辑
摘要:简要说明: 表设计时,需要往表里加一个version字段。每次查询时,查出带有version的数据记录,更新数据时,判断数据库里对应id的记录的version是否和查出的version相同。若相同,则更新数据并把版本号+1;若不同,则说明,该数据发送并发,被别的线程使用了,进行递归操作,再次执行递归 阅读全文
posted @ 2018-07-27 15:51 筱筱的春天 阅读(7818) 评论(0) 推荐(0) 编辑
摘要:学习自https://blog.csdn.net/zqz_zqz/article/details/58603938 阅读全文
posted @ 2018-07-27 15:21 筱筱的春天 阅读(352) 评论(0) 推荐(0) 编辑
摘要:转载自https://www.cnblogs.com/viviwind/archive/2012/09/22/2698450.html 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码中执行。当进程处于内核 阅读全文
posted @ 2018-07-27 12:56 筱筱的春天 阅读(184) 评论(0) 推荐(0) 编辑
摘要:转载原文地址:http://www.cnblogs.com/ygj0930/p/6561667.html 一:Monitor Monitor是一个同步工具,相当于操作系统中的互斥量(mutex),即值为1的信号量。 它内置与每一个Object对象中,相当于一个许可证。拿到许可证即可以进行操作,没有拿 阅读全文
posted @ 2018-07-27 10:50 筱筱的春天 阅读(688) 评论(0) 推荐(0) 编辑
摘要:学习自 https://blog.csdn.net/aigoogle/article/details/29893667 对我很有帮助 感谢作者 阅读全文
posted @ 2018-07-26 17:45 筱筱的春天 阅读(299) 评论(0) 推荐(0) 编辑
摘要:由于不同厂商的浏览器或某浏览器的不同版本,对CSS的支持、解析不一样,导致在不同浏览器的环境中呈现出不一致的页面效果。这时,我们为了获得统一的页面效果,就需要针对不同的浏览器或不同版本写特定的css样式,我们把这个针对不同的浏览器写相应的css code的过程叫做css hack 阅读全文
posted @ 2018-07-26 16:27 筱筱的春天 阅读(194) 评论(0) 推荐(0) 编辑
摘要:原文:http://blog.csdn.net/zheng548/article/details/54426947 区别一:API层面 syschronized使用 synchronized即可修饰方法,也可以修饰代码块。 synchronized修饰方法时,如下所示: synchronized修饰 阅读全文
posted @ 2018-07-26 11:20 筱筱的春天 阅读(5351) 评论(0) 推荐(0) 编辑
摘要:引入 注解最简单的使用方式 Java注解与普通修饰符(public\static\void...)的使用方式并没有多大区别,下面的例子是最常见的注解 通过在方法上使用@Test注解后,在运行该方法时,测试框架会自动识别该方法并单独调用。@Test实际上是一种标记注解,起标记作用,运行时告诉测试框架该 阅读全文
posted @ 2018-07-25 16:27 筱筱的春天 阅读(441) 评论(0) 推荐(0) 编辑
摘要:@Retention元注解 有三种取值:RetentionPolicy.SOURCE、RetentionPolicy.CLASS、RetentionPolicy.RUNTIME分别对应:Java源文件(.java文件) >.class文件 >内存中的字节码 Retention注解说明 当在Java源 阅读全文
posted @ 2018-07-25 14:43 筱筱的春天 阅读(372) 评论(1) 推荐(0) 编辑
摘要:1.简单工厂模式 2. 工厂方法模式 3.抽象工厂模式 例子1 例子2 阅读全文
posted @ 2018-07-24 15:12 筱筱的春天 阅读(512) 评论(1) 推荐(0) 编辑
摘要:1 工厂模式的作用,为什么要用工厂模式? 工厂模式是为了解耦:把对象的创建和使用的过程分开。就是Class A 想调用Class B,那么只是调用B的方法,而至于B的实例化,就交给工厂类。 工厂模式可以降低代码重复。如果创建B过程都很复杂,需要一定的代码量,而且很多地方都要用到,那么就会有很多的重复 阅读全文
posted @ 2018-07-23 11:05 筱筱的春天 阅读(7746) 评论(3) 推荐(1) 编辑
摘要:一般在单例模式下使用.getInstance()创建对象;但并不是所有有私有构造方法,对外通过getInstance方法提供 实例的情况就是单例模式。 注:单例模式:一个类有且只有一个实例。1,一个私有的构造器2,一个私有的该类类型的变量3,必须有一个共有的返回类型为该类类型的方法,用来返回这个唯一 阅读全文
posted @ 2018-07-20 15:59 筱筱的春天 阅读(25328) 评论(1) 推荐(0) 编辑
摘要:学习连接 https://www.cnblogs.com/welen/articles/5385837.htm 阅读全文
posted @ 2018-07-19 18:01 筱筱的春天 阅读(190) 评论(0) 推荐(0) 编辑
摘要:A。什么是静态工厂方法 在 Java 中,获得一个类实例最简单的方法就是使用 new 关键字,通过构造函数来实现对象的创建。 就像这样: 不过在实际的开发中,我们经常还会见到另外一种获取类实例的方法: ↑ 像这样的:不通过 new, 而是用一个静态方法来对外提供自身实例的方法,即为我们所说的静态工厂 阅读全文
posted @ 2018-07-19 17:58 筱筱的春天 阅读(1212) 评论(0) 推荐(0) 编辑
摘要:A .设计模式的作用 从书上摘话给你们看看 帮助我们将应用组织成容易了解,容易维护,具有弹性的架构,建立可维护的OO系统,要诀在于随时想到系统以后可能需要的变化以及应付变化的原则。 这么复杂的解释肯定是不愿意看了,我用我的话来总结 1、设计模式能让专业人之间交流方便,如下: 程序员A:这里我用了XX 阅读全文
posted @ 2018-07-19 17:50 筱筱的春天 阅读(353) 评论(0) 推荐(0) 编辑
摘要:从一道选择题开始 分析 选项A 选项A中比较的是i01和i02,Integer i01=59这里涉及到自动装箱过程,59是整型常量,经包装使其产生一个引用并存在栈中指向这个整型常量所占的内存,这时i01就是Integer 的引用。 而int i02=59由于int是基本类型,所以不存在引用问题,直接 阅读全文
posted @ 2018-07-19 13:57 筱筱的春天 阅读(6966) 评论(0) 推荐(0) 编辑
摘要:从我们接触Java的时候,就被告知基础类型byte是一个字节,占8位,表示的范围是-128~127。那么为什么会这个范围呢? 咱们先回顾一下计算机基础: 1. 在计算机内部数据的存储和运算都采用二进制;2. 计算机中数据分为有符号数和无符号数,对于有符号数,计算机规定用最高位来表示符 号。“0”表示 阅读全文
posted @ 2018-07-19 11:36 筱筱的春天 阅读(693) 评论(1) 推荐(0) 编辑
摘要:对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲: 一.抽象类 阅读全文
posted @ 2018-07-18 17:10 筱筱的春天 阅读(245) 评论(1) 推荐(0) 编辑
摘要:1. 接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是 public abstract,其他修饰符都会报错),所以不能含有静态代码块以及静态方法(用 static 修饰的方法) 2. 在jdk1.8中,接口里可以有静态方法,接口里的有静态方法 必须 阅读全文
posted @ 2018-07-18 16:47 筱筱的春天 阅读(9114) 评论(2) 推荐(3) 编辑
摘要:一 般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情 况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用比如main方法就必须是静态的 这是程序入口两者的区别就是:静态代码块是自动执行的;静态方法是被调用的时候才执行的. 区别很简... 阅读全文
posted @ 2018-07-18 16:40 筱筱的春天 阅读(251) 评论(1) 推荐(0) 编辑
摘要:System.out.println("账号=="+name+"\n"); System.out.println("密码=="+pwd+"\n"); 阅读全文
posted @ 2018-07-18 16:33 筱筱的春天 阅读(9441) 评论(0) 推荐(0) 编辑
摘要:静态方法是使用公共内存空间的,就是说所有对象都可以直接引用,不需要创建对象再使用该方法。 例如,我创建一个类,里面有一个静态方法: 然后在含有main方法的类中使用这个类时,对与以上非静态和静态方法的引用方式是不同的,如下: 阅读全文
posted @ 2018-07-18 14:11 筱筱的春天 阅读(5861) 评论(3) 推荐(0) 编辑
摘要:java的接口为什么不能实例化呢?首先,我们需要明白实例化的含义。实例化实际意义是在jvm的堆中开辟出一块内存空间,比如Student s = new Student();此处声明Student对象s,并且实例化一个Student对象,实则是在堆中开辟出一块空间来存放Student对象,s则是指向这 阅读全文
posted @ 2018-07-17 18:01 筱筱的春天 阅读(3487) 评论(1) 推荐(0) 编辑
摘要:匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象方法 运行结果:eat something 可以看到,我们用Child继承了Person类,然后实现 阅读全文
posted @ 2018-07-17 17:54 筱筱的春天 阅读(2007) 评论(2) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-07-16 17:54 筱筱的春天 阅读(142) 评论(1) 推荐(0) 编辑
摘要:从这里学了一些知识点https://blog.csdn.net/sun_tttt/article/details/65445754,感谢作者 阅读全文
posted @ 2018-07-16 17:02 筱筱的春天 阅读(199) 评论(0) 推荐(0) 编辑
摘要:摘要 尽管Java提供了一个可以处理文件的IO操作类。 但是没有一个复制文件的方法。 复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候。 然而有几种方法可以进行Java文件复制操作,下面列举出4中最受欢迎的方式。 1. 使用FileStreams复制 这是最经典的方式将一个文件的内容复 阅读全文
posted @ 2018-07-16 16:50 筱筱的春天 阅读(2461) 评论(1) 推荐(0) 编辑
摘要:单行注释:// 注释内容 多行注释:/*... 注释内容....*/ 文本注释:/**.. 注释内容....*/ 阅读全文
posted @ 2018-07-16 16:18 筱筱的春天 阅读(124) 评论(0) 推荐(0) 编辑
摘要:①文本标记语言 即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言。 ②HTML 标记标签 通常被称为 HTML 标签 (HTML tag)。 ③HTML标签特点 由尖括号包围的关键词,比如 <html> 通常是成对出现的,比如 <div> 和 </d 阅读全文
posted @ 2018-07-13 17:37 筱筱的春天 阅读(10371) 评论(0) 推荐(0) 编辑
摘要:https://iconnect.infosysapps.com/vpn/index.html 阅读全文
posted @ 2018-07-13 16:57 筱筱的春天 阅读(269) 评论(0) 推荐(0) 编辑
摘要:IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。 一、BIO 在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待 阅读全文
posted @ 2018-07-13 10:01 筱筱的春天 阅读(2232) 评论(1) 推荐(0) 编辑
摘要:1、什么是线程池: java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服 阅读全文
posted @ 2018-07-12 18:10 筱筱的春天 阅读(4450) 评论(1) 推荐(0) 编辑
摘要:首先轻量级与重量级是一个相对的概念,主要是对应用框架使用方便性和所提供服务特性等方面做比较的。 比方说EJB就是一个重量级的框架,因为它对所编写的代码有限制,同时它也提供分布式等复杂的功能。 相比之下,Spring就是轻量级框架,因为它需要的只是普通的Java对象,它所提供的也只是足够中小应用使用的 阅读全文
posted @ 2018-07-12 10:55 筱筱的春天 阅读(2120) 评论(2) 推荐(0) 编辑
摘要:@ 1里面定义个变量2 3这里加上postman.setEnvironmentVariable("MatchID",JSON.parse(responseBody)); 这样reponsebody的这个值就会放到变量MatchID里面了 @ 其他地方就可以引用了 阅读全文
posted @ 2018-07-11 10:34 筱筱的春天 阅读(1376) 评论(0) 推荐(0) 编辑
摘要:@引言 reactor(反应器)模式 使用单线程模拟多线程,提高资源利用率和程序的效率,增加系统吞吐量。下面例子比较形象的说明了什么是反应器模式: 一个老板经营一个饭店, 传统模式 - 来一个客人安排一个服务员招呼,客人很满意;(相当于一个连接一个线程) 后来客人越来越多,需要的服务员越来越多,资源 阅读全文
posted @ 2018-07-10 23:00 筱筱的春天 阅读(373) 评论(0) 推荐(0) 编辑
摘要:@IDEA介绍 IDEA 全称 IntelliJ IDEA,是Java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(Git、svn、github等)、JUnit、CVS整合、代码分析、 创新的GUI设 阅读全文
posted @ 2018-07-10 22:52 筱筱的春天 阅读(838) 评论(0) 推荐(0) 编辑
摘要:Socket类 套接字是网络连接的一个端点。套接字使得一个应用可以从网络中读取和写入数据。放在两个不同计算机上的两个应用可以通过连接发送和接受字节流。为了从你的应用发送一条信息到另一个应用,你需要知道另一个应用的IP地址和套接字端口。在Java里边,套接字指的是java.net.Socket类。 要 阅读全文
posted @ 2018-07-10 10:53 筱筱的春天 阅读(4055) 评论(1) 推荐(0) 编辑
摘要:网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提 阅读全文
posted @ 2018-07-09 18:03 筱筱的春天 阅读(14121) 评论(1) 推荐(3) 编辑
摘要:①什么是进程阻塞 正在运行的进程由于提出系统服务请求(如I/O操作),但因为某种原因未得到操作系统的立即响应,或者需要从其他合作进程获得的数据尚未到达等原因,该进程只能调用阻塞原语把自己阻塞,等待相应的事件出现后才被唤醒。 ②阻塞状态 正在进行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而 阅读全文
posted @ 2018-07-09 17:44 筱筱的春天 阅读(1269) 评论(0) 推荐(0) 编辑
摘要:阻塞IO:socket 的阻塞模式意味着必须要做完IO 操作(包括错误)才会返回。 非阻塞IO:非阻塞模式下无论操作是否完成都会立刻返回,需要通过其他方式来判断具体操作是否成功。 两者区别: 所谓阻塞方式的意思是指, 当试图对该文件描述符进行读写时, 如果当时没有东西可读,或者暂时不可写, 程序就进 阅读全文
posted @ 2018-07-09 17:36 筱筱的春天 阅读(2822) 评论(1) 推荐(0) 编辑
摘要:1.啥是java的原子性 原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。 一个很经典的例子就是银行账户转账问题: 比如从账户A向账户B转1000元,那么必然包括2个操作:从账户A减去1000元,往账户B加上1000元。 试想一下,如果这2个操作不具备原 阅读全文
posted @ 2018-07-09 16:45 筱筱的春天 阅读(6646) 评论(1) 推荐(1) 编辑
摘要:①引言 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情 阅读全文
posted @ 2018-07-09 14:42 筱筱的春天 阅读(234) 评论(1) 推荐(0) 编辑
摘要:①引言 在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁 锁机制存在以下问题: (1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。 (2)一个线程持有锁会导致其它所有需要此锁的线程挂起。 (3)如果一个优先级高的线程等待一个优先 阅读全文
posted @ 2018-07-05 17:50 筱筱的春天 阅读(335) 评论(0) 推荐(0) 编辑
摘要:①啥是条件运算符 == 是等于号 = 是赋值号 ? : 看好了,问号和冒号是一起用的,叫条件运算符。 ②语法: 条件表达式 ? 真值 : 假值 这个表式式由三部分组成的,如果条件表达式的值为真,则整个表达式的值为“真值”的值,反之为“假值”的值。 ③例: a>b?c:d 如果a>b,表达式值为c 如 阅读全文
posted @ 2018-07-04 17:10 筱筱的春天 阅读(9451) 评论(0) 推荐(0) 编辑
摘要:①引言(为什么要使用ConcurrentHashMap) 因为多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap。 HashTable容器使用synchronized来保证线程安全,但在线程竞争激烈的情况下HashTabl 阅读全文
posted @ 2018-07-04 13:56 筱筱的春天 阅读(777) 评论(2) 推荐(0) 编辑
摘要:①Hash_map原理 1.Hash_map基于hash table(哈希表)。 哈希表最大的优点,就是把数据的存储和查找消耗的时间大大降低,几乎可以看成是常数时间;而代价仅仅是消耗比较多的内存。然而在当前可利用内存越来越多的情况下,用空间换时间的做法是值得的。另外编码比较容易也是它的特点之一。 2 阅读全文
posted @ 2018-07-03 18:04 筱筱的春天 阅读(226) 评论(1) 推荐(0) 编辑
摘要:①equals() 的作用 equals() 的作用是 用来判断两个对象是否相等。 equals() 定义在JDK的Object.java中。通过判断两个对象的地址是否相等(即,是否是同一个对象)来区分它们是否相等。 ②equals() 与 == 的区别是什么? == : 它的作用是判断两个对象的地 阅读全文
posted @ 2018-07-03 16:05 筱筱的春天 阅读(186) 评论(1) 推荐(0) 编辑
摘要:①基本理解 Hashtable、Hashmap、Treemap都是最常见的一些Map实现,是以键值对的形式存储和操作数据的容器类型。 Hashtable是Java类库提供的一个哈希实现,本身是同步的,不支持null键和null值,由于同步导致性能开销,所以已经很少被推荐使用。 HashMap是应用更 阅读全文
posted @ 2018-07-03 11:24 筱筱的春天 阅读(1072) 评论(1) 推荐(0) 编辑
摘要:①对TreeMap有个整体认识 TreeMap是一个有序的key-value集合,它是通过红黑树实现的。 TreeMap继承于AbstractMap,所以它是一个Map,即key-value集合。 TreeMap实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集 阅读全文
posted @ 2018-07-02 16:54 筱筱的春天 阅读(6380) 评论(1) 推荐(0) 编辑
摘要:①对Hashtable有个整体认识 和HashMap一样,Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射。Hashtable 继承于Dictionary,实现了Map、Cloneable、java.io.Serializable接口。Hashtable 的函数都是 阅读全文
posted @ 2018-07-02 15:46 筱筱的春天 阅读(13580) 评论(2) 推荐(0) 编辑
摘要:①对HashMap的整体认识 HashMap是一个散列表,它存储的内容是键值对(key-value)映射。 HashMap继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。 HashMap的实现是不同步的,这意味着它不是线程安全的。它的ke 阅读全文
posted @ 2018-07-02 13:27 筱筱的春天 阅读(4195) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示