JAVA
NowIWanaBe
这个作者很懒,什么都没留下…
展开
-
【重学Java】(四)Handler与ThreadLocal
先放结论:很多网上的文章说,threadlocal是以当前线程作为key的,这个说法是错误的。正确的说法是:threadlocal用自己做key,存到threadlocalmap中,因为一个Thread只有一个threadlocalmap,这个map中存储了当前线程所有的threadlocal对象。由一道面试题引申:Handler中如何保证它的Looper是唯一的? 答案:ThreadLocal我们知道,Looper循环是从Looper.prepare开始的:可以看到这里sThreadLoc原创 2020-05-12 18:24:05 · 639 阅读 · 1 评论 -
【重学Java】(三)静态代理与动态代理
1.静态代理静态代理是典型的代理模式的模版代码,代码结构如图:具体实现:被代理类和代理类实现同一接口,在代理类中持有被代理对象的引用,外界调用时,操作代理对象即可操作被代理对象。由于代理的存在,还可以在操作前后加入额外的逻辑。如果目标类是第三方的代码,也可以采用继承的方式做代理2.动态代理(1)动态代理只能代理接口。因为动态代理生成的proxy代理类,都是继承自系统的Pro...原创 2020-04-30 18:04:21 · 225 阅读 · 0 评论 -
【重学Java】(二)注解与反射
1.注解的意义注解本身没有意义,它是作为一种标记或者注释存在。需要结合反射、插桩才有作用jdk1.5引入,对于被注解的代码没有影响2.元注解是用于注解的注解:meta-annotationTarget:注解的使用范围public enum ElementType { TYPE, // 类、接口、枚举类 FIELD, // 成员变量(包括:枚举常量)...原创 2020-04-28 16:35:29 · 157 阅读 · 0 评论 -
【重学Java】(一)Java泛型
1.什么是泛型JDK5引入泛型,提供了编译时 类型安全 检测机制。该机制允许程序员在编译期检测非法的类型。本质是参数类型,所操作的数据类型被认定为参数。只存在于编辑器和编译期,jvm中没有泛型,目的是为了兼容低版本2.为什么使用泛型(1)增强编译期错误检测,减少因类型问题引发的运行时异常(2)具有更强的类型检查,不需要强转(3)可以使用泛型算法,增加代码复用性3.J...原创 2020-04-26 19:58:10 · 157 阅读 · 0 评论 -
Java中的4种引用在Android中的应用
======================================================原文链接http://blog.csdn.net/shifuhetudi/article/details/78976672,如侵删======================================================JVM垃圾回收(GC)机制我们知道,Java垃圾回收(...转载 2018-03-03 11:26:16 · 2262 阅读 · 0 评论 -
volatile和synchronized
=================================================原文链接http://blog.csdn.net/suifeng3051/article/details/52611233,如侵删=================================================volatile和synchronized特点首先需要理解线程安全的两个方...转载 2018-03-03 11:16:10 · 186 阅读 · 0 评论 -
深入理解java异常处理机制-exception
1. 引子 try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确,那么这篇文章你就不用浪费时间看啦。package Test转载 2017-12-05 14:08:12 · 6720 阅读 · 0 评论 -
反射方式获取父类中的所有属性和方法
俗话说:反射反射,程序猿的快乐。特意转载这篇文章,当做学习笔记原文链接Java代码 package com.syh.jdbc.reflection_super; /** * 父类 * @author syh * */ public class Parent { public String publi转载 2017-10-26 20:11:56 · 8481 阅读 · 0 评论 -
Java之——Web项目中DLL文件动态加载方法
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/53903557 在Java Web项目中,我们经常会用到通过JNI调用dll动态库文件来实现一些JAVA不能实现的功能,或者是一些第三方dll插件。通常的做法是将这些dll文件复制到 %JAVA_HOME%\jre\bin\ 文件夹或者 应用中间件(Tomcat|Weblog转载 2017-09-27 19:39:15 · 879 阅读 · 0 评论 -
如何正确地写出单例模式
单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。懒汉式,线程不安全当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。转载 2017-06-30 18:21:36 · 263 阅读 · 0 评论 -
Java反射机制详解
概要:Java反射机制详解| |目录1反射机制是什么2反射机制能做什么3反射机制的相关API·通过一个对象获得完整的包名和类名·实例化Class类对象·获取一个对象的父类与实现的接口·获取某个类中的全部构造函数 - 详见下例·通过反射机制实例化一个类的对象·获取某个类的全部属性·获取某个类的全部方法·通过反射机制调用某个类的方法·通过反射机制操作某个类的属性·反射机制的动态转载 2017-04-05 15:02:36 · 338 阅读 · 0 评论 -
DVM和JVM(Dalvik VM和Java VM)的区别
Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。它可以支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行,.dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。(dx 是一套工具,可以将 Java .class 转换成 .dex 格式. 一个dex档通常会有多个.class。由于转载 2017-02-16 20:51:29 · 498 阅读 · 0 评论