Java
Eric_Bang
这个作者很懒,什么都没留下…
展开
-
Java之多继承
Java多继承关于Java多继承,学过Java都知道是不支持多继承,但这个一般指Java类不支持多继承;有种特殊情况下,Java是支持多继承的,那就是接口:如下所示:public interface BlockingDeque<E> extends BlockingQueue<E>, Deque<E> { /* * We have "diamond" multiple interface inheritance here, and that原创 2020-07-08 14:24:29 · 397 阅读 · 0 评论 -
队列
队列关系图原创 2020-07-08 14:12:44 · 2115 阅读 · 0 评论 -
String使用不当可能导致内存泄露
(转载于Hollis)String是Java中一个比较基础的类,每一个开发人员都会经常接触到。而且,String也是面试中经常会考的知识点。String有很多方法,有些方法比较常用,有些方法不太常用。今天介绍一个String使用不当可能导致内存泄露的问题,主要围绕其subString方法。围绕String和subString也有很多面试题,是比较重要的知识点。substring(int beginIndex, int endIndex)方法在不同版本的JDK中的实现是不同的。了解他们的区别可以帮助你原创 2020-06-24 15:27:17 · 592 阅读 · 0 评论 -
策略模式
策略模式策略模式定义优点缺点策略模式类图策略模式角色示例抽象的策略角色具体策略角色封装角色上层模块策略模式定义也叫政策模式,定义一组算法,将每个算法都封装起来,并使它们之间可以互换。策列模式使用的是面向对象的继承和多态机制。优点算法自由切换避免使用多重条件判断扩展性良好缺点策略类数量增多所有策略类都需要对外暴露策略模式类图策略模式角色Context封装角色Strategy抽象策略角色ConcrecteStrategy具体策略角色示例抽象的策略角色publ原创 2020-06-18 22:01:50 · 141 阅读 · 0 评论 -
Java中的注解基础
一、元注解 元注解的作用就是负责注解其他注解。1.@Target @Target用来指明注解所修饰的目标,包括packages、types(类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。取值(ElementType)有: CONSTRUCTOR:用于描述构造器 FIELD:用于描述域 LOCAL_转载 2017-10-24 18:23:27 · 231 阅读 · 0 评论 -
讲故事,学(Java)设计模式—桥接模式
本文由 ImportNew - 陈雅峰 翻译自 programcreek。欢迎加入翻译小组。转载请见文末要求。本文由 @胡试之 校稿。如果你也希望参与类似的系列文章翻译,可以加入我们的Java开发 和 技术翻译 小组。简单来讲,桥接模式是一个两层的抽象。桥接模式是用于“把抽象和实现分开,这样它们就能独立变化”。 桥接模式使用了封装、聚合,可以用继承将不同的功能拆分为不同的类。1、桥接模式的故转载 2017-10-16 16:10:35 · 280 阅读 · 0 评论 -
Android内存优化(使用SparseArray和ArrayMap代替HashMap)
在Android开发时,我们使用的大部分都是Java的api,比如HashMap这个api,使用率非常高,但是对于Android这种对内存非常敏感的移动平台,很多时候使用一些java的api并不能达到更好的性能,相反反而更消耗内存,所以针对Android这种移动平台,也推出了更符合自己的api,比如SparseArray、ArrayMap用来代替HashMap在有些情况下能带来更好的性能提升。介绍它转载 2017-11-16 10:36:47 · 249 阅读 · 0 评论 -
Android24.2.0支持库中的SnapHelper学习和使用
一、前言Google最新发布的support v4包更新到24.2.0,由原来的一个大包分割成多个小module。这样做真是太贴心不过了,以后不会再因为单独使用某一个功能而将整个v4包导入项目中,而是我想用哪个就导入哪个,很大程度上减小了APK的大小。 com.android.support:support-compat:24.2.0 com.android.support:support转载 2017-12-14 18:02:10 · 493 阅读 · 0 评论 -
XML解析与Map、Json转换,Dom4j-工具类
XML解析与Map、Json、Bean转换,Dom4j-工具类对于开发人员来说,xml文件的处理应该并不陌生吧,先总述下,个人感觉XStream在处理XML文件和JavaBean对象互转时比较好,dom4j对常用的xml配置文件操作比较好点;首先,Dom4j 处理xml应该是公认的易操作、高效率,特别是对读取和修改xml文件中内容 也提供了丰富的API接口,但是在dom4j在处理XML文件和Ja转载 2018-02-07 15:33:00 · 451 阅读 · 0 评论 -
Java的AOP技术
AOP是Aspect Oriented Programming的缩写,意思是面向方面编程,与OOP(Object Oriented Programming)面向对象编程对等,都是一种编程思想。 从OOP角度分析,我们关注业务的处理逻辑,是属于纵向的行为,从AOP角度分析,我们关注对象行为发生时的问题...转载 2019-01-10 23:05:23 · 6230 阅读 · 0 评论 -
Android中的自定义注解(反射实现-运行时注解)
预备知识: Java注解基础 Java反射原理 Java动态代理一、布局文件的注解 我们在Android开发的时候,总是会写到setContentView方法,为了避免每次都写重复的代码,我们需要使用注解来代替我们做这个事情,只需要在类Activity上声明一个ContentView注解和对应的布局文件就可以了。@ContentView(R.layout.activity_main)pub转载 2017-10-11 18:23:42 · 858 阅读 · 1 评论 -
Java Date日期比较
Java 日期比较 在开发过程中,我们可能会遇到选择日期,作为筛选条件,有个开始时间,和截止时间,但是在处理相关的逻辑的过程中,我们还是需要去判断,开始时间不能比截止时间大,自己在开发过程中,总结出一些方法,如下:方法一: 通过java自带的api去直接处理,方便又快捷,有before(Date date),after(Date date),我们进入该api后,看到内部原理机制如下` /**原创 2016-04-05 13:49:44 · 1853 阅读 · 0 评论 -
Collections类常用方法总结
Collections类常用方法总结概述: Collections是针对集合类的一个帮助类,它提供了一系列静态方法实现了对各种集合的排序,搜索和线程安全等操作。(若有写得不好的地方,请各位大侠指出,小弟感激不尽)1、sort(Collection)方法的使用(含义:对集合进行排序)。 例:对已知集合c进行排序? public class Pra转载 2017-05-17 11:57:51 · 951 阅读 · 0 评论 -
基本类型与包装(装箱)类型的区别
Java的类型分为两部分,一个是基本类型(primitive),如int、double等八种基本数据类型;另一个是引用类型(reference type),如String、List等。而每一个基本类型又各自对应了一个引用类型,称为包装类型(或装箱类型,boxed primitive)。装箱基本类型中对应于int 、double、和boolean的是Integer、Double、Boolean。基本转载 2017-05-11 22:21:15 · 4635 阅读 · 0 评论 -
泛型中? super T和? extends T的区别
原文出处: 并发编程网经常发现有List<? super T>、Set<? extends T>的声明,是什么意思呢?<? super T>表示包括T在内的任何T的父类,<? extends T>表示包括T在内的任何T的子类,下面我们详细分析一下两种通配符具体的区别。extendsList<? extends Number> foo3的通配符声明,意味着以下的赋值是合法的:1234567891011转载 2017-04-17 23:20:22 · 727 阅读 · 0 评论 -
Java中的泛型方法
泛型是什么意思在这就不多说了,而Java中泛型类的定义也比较简单,例如:public class Test<T>{}。这样就定义了一个泛型类Test,在实例化该类时,必须指明泛型T的具体类型,例如:Test<Object> t = new Test<Object>();,指明泛型T的类型为Object。 但是Java中的泛型方法就比较复杂了。 泛型类,是在实例化类的时候指转载 2017-04-17 23:18:32 · 816 阅读 · 0 评论 -
Java 泛型小记
泛型Set的无限制通配符类型为Set原创 2017-04-13 23:29:52 · 653 阅读 · 0 评论 -
单例模式的八种写法比较、枚举实现的好处、静态内部类实现单例原理
目录简介基本的实现思路注意事项单例模式的八种写法1、饿汉式(静态常量)[可用]2、饿汉式(静态代码块)[可用]3、懒汉式(线程不安全)[不可用]4、懒汉式(线程安全,同步方法)[不推荐用]5、懒汉式(线程安全,同步代码块)[不可用]6、双重检查[推荐用]7、静态内部类[推荐用]8、枚举[推荐用]优点缺点适用场合原文链接:http://tianweili.github.io转载 2017-01-17 16:13:55 · 960 阅读 · 0 评论 -
java 单例模式
概念: java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机原创 2016-12-19 22:12:06 · 528 阅读 · 0 评论 -
java输入输出流、字符字节流
所有的程序都离不开信息的输入和输出。例如,从键盘读取数据、在网络上交换数据、打印报表、读写文件信息等,都要涉及数据输入输出的处理。在面向对象语言中,输入和输出都是通过数据流来实现的。在Java中,处理数据流的类主要被放在java.io包中 。数据流的基本概念:数据源(Data Sourcc):是指那些能够提供数据的地方,包括键盘、磁盘文件、网络接口等。数据宿(Data Sink):指能够接收数据的转载 2016-12-18 00:22:40 · 2004 阅读 · 0 评论 -
【Java语言】如何提高Java程序性能?
1.尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面第一,控制资源的使用,通过线程同步来控制资源的并发访问第二,控制实例的产生,以达到节约资源的目的第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信2.尽量避免随意使用静态变量要知道,当某个对象被定义为stataic变转载 2016-12-13 18:23:51 · 357 阅读 · 0 评论 -
Json解析之JsonObect
关键API之jsonObject.has();点进去看其源码可知: /** * Returns true if this object has a mapping for {@code name}. The mapping * may be {@link #NULL}. */ public boolean has(String name) {原创 2016-05-13 17:06:16 · 705 阅读 · 0 评论 -
java四种位运算
位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。 1.与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0,例如下面的程序段。public class data13{pub转载 2017-05-17 11:58:47 · 636 阅读 · 0 评论