https://www.atlassian.com/blog/archives/magic_trick_in_java https://www.gamlor.info/wordpress/2010/11/magic-cast-method-in-java/…
Java Magic. Part 4: sun.misc.Unsafe @(Base)[JDK, Unsafe, magic, 黑魔法] 转载请写明:原文地址 系列文章: -Java Magic. Part 1: java.net.URL -Java Magic. Part 2: 0xCAFEBABE -Java Magic. Part 3: Finally -Java Magic. Part 4: sun.misc.Unsafe 英文原文 Java是一个safe programming lan…
Java Magic. Part 3: Finally @(Base)[JDK, magic, 黑魔法] 转载请写明:原文地址 英文原文 系列文章: -Java Magic. Part 1: java.net.URL -Java Magic. Part 2: 0xCAFEBABE -Java Magic. Part 3: Finally -Java Magic. Part 4: sun.misc.Unsafe 所有JAVA程序员都应该知道一个基本概念-finally一定会被执行,但是真的是这样么…
Java Magic. Part 2: 0xCAFEBABE @(Base)[JDK, magic, 黑魔法] 转载请写明:原文地址 英文原文 系列文章: -Java Magic. Part 1: java.net.URL -Java Magic. Part 2: 0xCAFEBABE -Java Magic. Part 3: Finally -Java Magic. Part 4: sun.misc.Unsafe 你知道所有的java class文件都有一个相同的4字节串吗.这个4字节串的16…
Java Magic. Part 1: java.net.URL @(Base)[JDK, url, magic, 黑魔法] 英文原文 转载请写明:原文地址 系列文章: -Java Magic. Part 1: java.net.URL -Java Magic. Part 2: 0xCAFEBABE -Java Magic. Part 3: Finally -Java Magic. Part 4: sun.misc.Unsafe 废话不多说,首先我们看如下代码: HashSet set = ne…
ss available : /usr/linkapp/data/linkapp/ddn_1440639847758_temp java.lang.IndexOutOfBoundsException at java.io.FileOutputStream.writeBytes(Native Method) at java.io.FileOutputStream.write(FileOutputStream.java:) at com.linkapp.ddn.DDNRestUtil.getData…
1.Android Studio报错 Attempt to invoke interface method 'boolean java.util.List.add(java.lang.Object)' on a null 原因:List没有初始化,比如 List<>list:  没有  List<>list = new ArrayList<>();…
错误: Caused by: java.lang.ClassCastException: class java.lang.Double cannot be cast to class org.apache.hadoop.io.WritableComparable (java.lang.Double is in module java.base of loader 'bootstrap'; org.apache.hadoop.io.WritableComparable is in unnamed…
背景: Mayabtis+springboot项目,连接数据库发生异常 报错内容: java.lang.AbstractMethodError: Receiver class com.mchange.v2.c3p0.impl.NewProxyResultSet does not define or inherit an implementation of the resolved method 'abstract boolean isClosed()' of interface java.sql…
一.什么是java反射 什么是 java 的反射? 说到反射,写这篇文章时,我突然想到了人的"反省",反省是什么?吾一日三省吾身,一般就是反思自身,今天做了哪些对或错的事情. java 的反射,我觉得有同样的思想.当然 java 反射要"反思"的是 java 程序在运行时类自己的信息,它获取的信息就是它自身类的详细信息. 类的哪些详细信息呢?比如类或对象的成员变量.方法等.然后可以对这些信息加以修改,从而调整 java 的运行逻辑. java 反射 API 提供了非…
目录 前言 传统的RTTI 反射 反射的实现方式 反射的性能 反射与设计模式 前言 并不是所有的Class都能在编译时明确,因此在某些情况下需要在运行时再发现和确定类型信息(比如:基于构建编程,),这就是RTTI(Runtime Type Information,运行时类型信息). 在java中,有两种RTTI的方式,一种是传统的,即假设在编译时已经知道了所有的类型:还有一种,是利用反射机制,在运行时再尝试确定类型信息. 本文主要讲反射方式实现的RTTI,建议在阅读本文之前,先了解类的加载机制(…
[概论与基本语法] 取这个标题,还是感觉有些大言不惭.之前大三的时候自学过一些基本的java知识,大概到了能独立写一个GUI出来的水平把,不过后来随着有了其他目标,就把这块放下了.之后常年没有用,早就忘得精光.这次重拾Java,还是从最基本的看起.不过因为还保留着之前一点记忆以及在Python里获得的一些知识,可能写的是非常不完全的,很多东西我懂的话也就跳过了. ■ 第一话,命运之出会 绪论的绪论.. Java是典型的OOP语言,即面向对象程序设计语言.编程语言一路发展而来,从机器语言,汇编语言…
一 RTTI概念 认识Claa对象之前,先来了解一个概念,RTTI(Run-Time Type Identification)运行时类型识别,对于这个词一直是 C++ 中的概念,至于Java中出现RTTI的说法则是源于<Thinking in Java>一书,其作用是在运行时识别一个对象的类型和类的信息,这里分两种: 传统的”RTTI”:它假定我们在编译期已知道了所有类型(在没有反射机制创建和使用类对象时,一般都是编译期已确定其类型,如new对象时该类必须已定义好): 反射机制,它允许我们在运…
1.0.0 Summary Tittle:[Java]-NO.12.Java.2.OCJP.1.001-[Java OCJP]- Style:Java Series:OCJP Since:2017-05-12 End:.... Total Hours:... Degree Of Diffculty:8 Degree Of Mastery:8 Practical Level:8 Desired Goal:8 Archieve Goal:.... Gerneral Evaluation:... Wr…
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大家.对于这次跳槽找工作, 我准备了挺长的时间, 其中也收集了很多比较好的笔试面试题, 大都是一些常用的基础, 很多都是由于时间原因没有来得及给出答案, 但是题目大都是比较经典实用的, 现在都放到这里, 希望对正处于找工作的博友有一定的帮助. 第一部分: Java基础(此部分面试题题目来自:http:…
在并发编程中,多个线程之间采取什么机制进行通信(信息交换),什么机制进行数据的同步? 在Java语言中,采用的是共享内存模型来实现多线程之间的信息交换和数据同步的. 线程之间通过共享程序公共的状态,通过读-写内存中公共状态的方式来进行隐式的通信.同步指的是程序在控制多个线程之间执行程序的相对顺序的机制,在共享内存模型中,同步是显式的,程序员必须显式指定某个方法/代码块需要在多线程之间互斥执行. 在说Java内存模型之前,我们先说一下Java的内存结构,也就是运行时的数据区域: Java虚拟机在执…
java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别   以前一直没有注意过这个问题,前两天机缘巧合上网查了一下,然后自己测试验证了一下.虽然网上说法很多,但是关于NoClassDefFoundError并没有给出一个样例,所以一直无法理解,索性自己验证了一下,收获还不少. ClassNotFoundException ClassNotFoundException这个错误,比较常见也好理解. 原因:就是找不到指定的c…
基本概念 进程是操作系统结构的基础,是一次程序的执行,是一个程序及其数据结构在处理机上顺序执行时所发生的活动,是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的独立单位.线程可以理解成是在进程中独立运行的子任务. 继承Thread类实现多线程 public class MyThread extends Thread { @Override public void run() { super.run(); System.out.println("MyThread..."); }…
目录 Java垃圾回收概况 Java内存区域 Java对象的访问方式 Java内存分配机制 Java GC机制 垃圾收集器 Java垃圾回收概况 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢.这是因为在Java虚拟机中,存在自动内存管理和垃圾清扫机制.概括地说,该机制对JVM(Java Virtual Mac…
这个系列面试题主要目的是帮助你拿轻松到offer,同时还能开个好价钱.只要能够搞明白这个系列的绝大多数题目,在面试过程中,你就能轻轻松松的把面试官给忽悠了.对于那些正打算找工作JAVA软件开发工作的童鞋们来说,当你看到这份题目的时候,你应该感动很幸运,因为,只要你把题目中的内容都搞懂了,在笔试的时候就可以游刃有余,通过面试只有半步之遥了,笔试只能反映你的JAVA技能.不管你是面试各个级别的JAVA工程师.架构师.还是项目经理,这个系列文章都是你最宝贵的资源,里面包括整个JAVA体系的知识,总会有…
13.1.2 Java类库中的集合接口和迭代器接口     删除元素,对于next和remove的调用是互相依赖的,如果调用remove之前没有调用next,则会跑出IllegalStateException异常.如果想要删除两个相连的元素: it.remove(); it.remove();//error 而是应该 it.remove(); it.next(); it.remove();          怎么觉得这种接口设计好傻呢.谁干的?     如果想要实现自己的集合类,可以从Abstr…
转载自:http://www.cnblogs.com/springfor/p/4036739.html C++ supports pointers whereas Java does not. But when many programmers questioned how you can work without pointers, the promoters began saying "Restricted pointers.” So we can say java supports Res…
 java集合框架之java HashMap代码解析 文章Java集合框架综述后,具体集合类的代码,首先以既熟悉又陌生的HashMap开始. 源自http://www.codeceo.com/article/java-hashmap-java-collection.html 签名(signature) public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Se…
Java语言编码规范(Java Code Conventions) 名称 Java语言编码规范(Java Code Conventions) 译者 晨光(Morning) 简介 本文档讲述了Java语言的编码规范,较之陈世忠先生<c++编码规范>的浩繁详尽,此文当属短小精悍了.而其中所列之各项条款,从编码风格,到注意事项,不单只Java,对于其他语言,也都很有借鉴意义.因为简短,所以易记,大家不妨将此作为handbook,常备案头,逐一对验. 声明 如需复制.传播,请附上本声明,谢谢.原文出处…
Servlet是SUN指定的Java服务器端编程规范,用以处理来自客户端的请求,处理并做出响应的一套基础API.Servlet是运行在 Servlet容器中的Java小程序,容器运行在服务器端,服务器侦听特定端口的请求,并解析请求地址,将请求对象送给容器中的Servlet来执行,这个原理非常简单,平时我们多以在浏览器中输入URL地址,提交表单方式来实现,现在我们用Java语言来模拟常用的GET和POST请求,来更底层的看看Servlet,这就是C/S模型了,其实Java Web不拘泥于B/S模型…
Java运行时内存区域 Java虚拟机在运行Java程序的时候会将它所管理的内存区域划分为多个不同的区域.每个区域都有自己的用途,创建以及销毁的时间.有的随着虚拟机的启动而存在,有的则是依赖用户线程来启动和销毁. 程序计数器 程序计数器是一块很小的区域,可以看做是用来表示线程所执行到字节码的某一行的行号指示器. 在Java虚拟机中,多线程是线程之间轮流切换并分配处理器的执行时间来实现的,为了线程切换之后能够继续回到之前的代码行继续执行,所以每个线程都有一个“线程私有”的程序计数器. 如果线程正在…
Java虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域有各自的用途,有各自的创建时间和销毁时间,有的区域随着虚拟机进程的启动而存在,有的区域则是依赖用户线程的启动和结束进行建立或销毁.Java虚拟机第二版规定,虚拟机管理的内存包含以下几个运行时数据区域   程序计数器:程序计数器(Program Counter Register)是一块较小的内存空间,作用可以理解为是当前线程所执行的字节码的行号指示器.Java虚拟机的多线程是通过线程切换以及分配处理器执行时…
发这篇博文的题目可能无法直接表示内容,但是确实是java.sql.Date和java.util.Date. 今天在使用'net.sf.json.JSONObject'封装json数据的时候,碰到很奇怪的问题,报出的异常,让我开始觉得,不知道从哪个异常开始找解决方案,报错如下: 一月 30, 2015 11:14:49 上午 org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for serv…
今天研究Java基础类库,Object类的时候,发现了一个关键字:native 咦?这是个什么东东?它认识我,我可不认识它! 嘿嘿,没关系,baidu一下. java native关键字 一. 什么是Native Method   简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C.这个特征并非java所特有,很多其它的编程语言都有这一机制,比如 在C++中,你可以用e…
19.Java数据库编程: JDBC概述:        JDBC(Java Database Connection)是java中提供的一套数据库编程API,它定义了一套用来访问数据库的标准Java类库(位于java.sql和javax.sql).        JDBC对于开发人员而言是API,对于厂商而言作为借口. JDBC编程步骤:        1.(Driver)根据应用程序所用的数据库,选择JDBC驱动程序类型.        2.链接到数据库,得到Connection对象.    …