J2SE
YQAG
这个作者很懒,什么都没留下…
展开
-
一张图理解线程池
原创 2021-03-16 20:20:20 · 207 阅读 · 1 评论 -
JVM_自动内存管理机制
运行时数据区域java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同点数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和接受二建立和销毁。主要内容:内存各个区域,区域的作用,服务对象,产生的问题 程序计数器每条线程都要有一个独立的程序计数器如果是正在执行的是JAVA方法,原创 2016-05-14 17:35:52 · 1810 阅读 · 2 评论 -
深入理解J2SE—Introspector(内省)
Introspector (内省)是操作javaBean的属性API,用来访问某个属性的 getter/setter 方法。什么事JavaBean?1.具备空参构造。2.提供熟悉的get/set方法。3.属性对象变量实例化。原创 2016-05-23 18:01:34 · 648 阅读 · 1 评论 -
深入理解J2SE—Introspector(内省)应用
上篇博客中主要介绍了Introspector的使用方法和概念,这篇博客中主要来写一些Introspector的应用。为什么要利用Introspector来对javabean进行get/set值,而不直接使用get/set方法。原创 2016-05-23 21:25:40 · 538 阅读 · 2 评论 -
Java注解教程及自定义注解
Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容。在这个教程当中,我们将学习Java的注解,如何定制注解,注解的使用以及如何通过反射解析注解。Java1.5引入了注解,当前许多java框架中大量使用注解,如Hibernate、Jersey、Spring。注解作为程序的元数据嵌入到程序当中。注解可以被一些解析工具或者是编译工具进行解析。我们也可以声明注解在编译转载 2016-01-31 19:37:18 · 906 阅读 · 4 评论 -
深入Java内存模型
你可以在网上找到一大堆资料让你了解JMM是什么东西,但大多在你看完后仍然会有很多疑问。happen-before是怎么工作的呢?用volatile会导致缓存的丢弃吗?为什么我们从一开始就需要内存模型?通过这篇文章,读者可以学习到足以回答以上所有问题的知识。它包含两大部分:第一部分是硬件层次的大体架构,第二部分是深入OpenJdk源代码和实现。因此,即使你没有太深入Java,你可能也会对第一转载 2016-01-30 12:47:57 · 1119 阅读 · 3 评论 -
java线程内存可见性-实现方式
上篇博客中主要介绍了,多线程中内存可见性的实现原理,主要是从jmm的角度去解释了实现原理。同时也引出了如果要实现共享变量的可见性,必须保证两点:1.线程修改后的共享变量值能够及时从工作内存刷新到主内存中。2.其他线程能够及时把共享变量的最新值从主内存中更新到自己的工作内存中。这篇博客根据实现共享变量的可见性的思想原理,总结一下实习这种思想的两种方式。1.synchronized原创 2015-11-22 19:19:15 · 1117 阅读 · 6 评论 -
java——变量分类
总之,如果按照声明位置划分的变量类型中,局部变量声明后必须要赋值以后才能使用;而成员变量声明后可以不赋值,系统有默认值。如果按所属的数据类型划分,基本类型数据只占用内存中的一块内存;而引用类型占用的是两块内存,根据引用变量就可以在堆内存中找到它指向的对象。原创 2014-07-18 14:48:35 · 5333 阅读 · 14 评论 -
java——异常机制
java的异常机制这一章,主要讲到了异常类的分类,处理异常中的5个关键字,重写方法时throws异常的规则。异常的捕获和处理能力能体现出一个程序员写的代码的健壮性的强弱。原创 2014-07-26 14:54:53 · 1323 阅读 · 23 评论 -
java——数组
总结:1.java中一维数组的元素是数据类型相同的变量,而二维数组就是将多个一维数组组合成数组。2.数组是引用变量,可以作为一个对象,而它的元素就是成员变量。原创 2014-07-29 14:07:07 · 1432 阅读 · 17 评论 -
java——TCP和UDP
TCP是专门设计用于不可靠的的因特网上提供可靠的、端到端的字节流通信的协议,它是一种面向连接的协议,TCP连接是字节流而非报文流。TCP协议就像打电话一样,接通以后有讲话有应答。UDP向应用程序提供了一种发送封装的原始IP数据报的方法、并且发送时无需建立连接,是一种不可靠的连接。UDP协议就像发电报一样,发出去后就不在去考虑对方收到没有收到。原创 2014-08-22 11:50:03 · 1245 阅读 · 11 评论 -
java——线程
java线程的特点:1.java的线程是通过java.lang.Thread类来实现。2.创建Thread的实例来创建新的线程3.线程通过特定的Thread对象run()来操作。4.通过调用Thead类的start()来启动一个线程.原创 2014-08-18 18:50:37 · 1071 阅读 · 8 评论 -
java——GUI
GUI是图形用户界面的英文缩写,说点直白一点GUI就是窗口、按钮等元素的总称。java中实现GUI是利用java.awt包及其子包进行性编程的。 在java.awt包中component和container是的它的两个核心,前者包括了Button、TextField等实现类;后者是component的子类,但是后者是一些Frame、panel等容器实现类,这些容器元素可以容纳Component对象。 说的简单一点就是容器对象中可以添加Button、TextField等这些对象。下图中也进一步原创 2014-08-25 18:49:11 · 1372 阅读 · 9 评论 -
8张图理解Java
一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。1、字符串不变性下面这张图展示了这段代码做了什么12String s = "abcd";s = s.concat("ef");2、equals转载 2015-08-04 21:53:18 · 705 阅读 · 12 评论 -
java线程内存可见性-java内存模型
java内存模型规定1.线程对共享内存的所有操作都必须在自己的工作内存中,不能直接从主内存中读取。2.不同线程中无法直接访问其他线程工作内存中的变量,线程间变量值的传递需要通过主内存来完成。原创 2015-11-22 13:34:50 · 1455 阅读 · 21 评论 -
java——递归调用
递归调用是调用自身的函数,并传给自身的相应的参数,这一运算过程是一层层的进行的,直到满足一定条件时,才停止调用。原创 2014-07-17 16:10:08 · 5922 阅读 · 15 评论