
java-se
nicewuranran
这个作者很懒,什么都没留下…
展开
-
java 之 String
java 之 String概述String是所有程序设计语言中都有的数据结构,也是在开发中使用最多的数据类型。日常开发中处理最多就是关于字符串的处理。String 源码展示String层次结构//final 修饰String类public final class Stringimplements java.io.Serializable, Comparable<String>, CharSequ原创 2016-04-07 17:45:25 · 344 阅读 · 0 评论 -
网络编程之URL和URLConnection
网络编程之URL和URLConnection介绍URL和URLConnection类是完成http网络请求时所用到的两个对象The java.net package contains two interesting classes: The URL class and the URLConnection class. these classes can be used to create clie原创 2016-07-19 15:19:18 · 592 阅读 · 0 评论 -
java字符串格式化处理技巧
java字符串格式化处理技巧介绍有时我们可能想要获得指定格式的字符串信息,有些数据是根据动态获取的,那么使用String的静态方法format(String string,Object...args)是一个不错的选择。应用场景本人开发中接触到的是短信模板动态填充内容,这算一个小知识点。String format静态方法format静态方法//Returns a formatted string原创 2016-07-19 16:21:48 · 1187 阅读 · 0 评论 -
XML技术
XML技术介绍XML(EXtensible Markup Language)指可扩展标记语言,XML的设计宗旨是传输数据(具有自描述性)而非显示数据。但是目前人们更多的是使用XML做配置文件而非作为传输数据的载体,业界更多的是使用JSON格式字符串来做载体。XML技术其实很简单,尤其对于java程序开发人员而言XML技术非常重要XML也算是一个比较悲情的技术,XML设计之初并不是主要为了作配置文件而原创 2016-07-20 23:57:49 · 4232 阅读 · 10 评论 -
Java NIO之Charset类字符编码对象
Charset类字符编码对象介绍java中使用Charset来表示编码对象This class defines methods for creating decoders and encoders and for retrieving the various names associated with a charset. Instances of this class are immutab原创 2016-08-04 21:54:30 · 10798 阅读 · 0 评论 -
单例设计模式深入浅出分析
单例设计模式深入浅出分析介绍单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。单例模式的核心 1、私有化构造方法 2、对外只提供一个实例懒汉和饿汉模式所谓懒汉模式指的是只有当原创 2016-09-13 21:33:56 · 334 阅读 · 0 评论 -
Java关键字之static、final、transient
Java关键字之static、final、transientstatic关键字static关键字,通常用来修饰变量和方法以及静态代码块。被修饰的变量表示为类所有对象所共有的,被修饰的方法表示类的方法。掌握好static关键字很重要一点就是,static的作用域是类而非某个具体对象。举例静态属性和静态方法/** * @author xuyi * @Time 2016年8月23日 下午9:28:3原创 2016-08-23 21:50:29 · 3470 阅读 · 0 评论 -
Java关键字之private、default、protected、public
Java关键字之private、default、protected、public介绍对于public修饰符,它具有最大的访问权限。它往往用于对外的情况,也就是对象或类对外的一种接口的形式比如:静态方法、静态成员变量,常和静态修饰一起使用对于protected修饰符,它主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,常出现在继承关系体系中对于default来说,它是针对本包访问原创 2016-08-24 21:26:41 · 794 阅读 · 0 评论 -
浅谈Java关键字
浅谈Java关键字介绍熟练掌握java开发,我觉得深入理解每一个java关键字是很有必要的。Java关键字指的是Java程序语言预先定义好的保留字,不允许开发人员使用这些关键字来定义变量、方法、类或其它标识符。Java关键字列表abstractabstract表示抽象的概念,可以用来修饰类和方法。被修饰的类无法被实例化。assertassert表示断言(真伪语句).boolean布尔值(tr原创 2016-09-23 10:54:09 · 493 阅读 · 0 评论 -
Java反射机制
Java反射机制目标1.理解Class类2.理解Java的类加载机制3.学会使用ClassLoader进行加载4.理解反射机制5.掌握Constructor、Method、Field6.理解并掌握动态代理介绍说实话反射用在编程语言中确实让人很难理解也很抽象。可以这么理解:为了能够动态(运行期)获得类的信息,因此java提供了反射机制。 Java正因为拥有反射机制所以说Java具备动态语言原创 2016-09-07 21:37:32 · 350 阅读 · 0 评论 -
浅谈Java SE知识点
浅谈Java SE知识点Java 发展和介绍Java从诞生(1995年)那一刻起就是为互联网而生的,因此在当今互联网时代,Java语言的应用非常的广泛.移动端的Android开发、服务端的java web和java ee都是使用Java语言。Java是一门纯面向对象的高级语言,对底层封装的比较完善,其编程思想更加贴近人类的思想而非计算机的思维方式,因此学习难度相对不是很高.Java特别适合大型应原创 2016-10-18 09:00:51 · 725 阅读 · 0 评论 -
理解编程范型
理解编程范型所谓编程模型就是每种程序设计语言其开发都存在自己的编程模型.四大编程范型面向对象编程模型如今面向对象无疑是最强势的编程范型,而java正是面向对象语言的典型代表.这种范型有三大主要思想:封装、继承、和多态.代表语言:java、python、c++原型编程模型和其它使用类来编写的语言不通,在原型语言中,所有原型都是对象实例.原型语言家族的成员包括javascript、Io,它们有简原创 2016-10-19 21:02:11 · 1111 阅读 · 0 评论 -
版本号闲谈
版本号闲谈不管是对于后端还是前段版本兼容始终是个无法避免的难题,而其中的版本号命令也应该符合一定的规则,否则比较版本时就比较麻烦.版本号的格式:V<主版本号>.<副版本号>.<发布号>版本号的初始值:V1.0.0版本号管理规则:1、产品的主体构件进行重大修改,主版本号加12、产品升级增加特性副版本号加13、主版本号加1时,副版本号和发布号置为04、副版本号加1时,发布号置为0Java代原创 2016-12-03 15:32:07 · 487 阅读 · 0 评论 -
Stream API
Stream API首先要理解Stream的概念,说实话这点确实非常的不好理解,尤其是Java IO也有Stream的概念,所以很容易导致混淆.Stream是Java 8中处理集合的关键概念,它可以指定你希望对集合进行的操作,但是执行操作的时间交给具体实现来决定.要点1、迭代器意味着特定的遍历策略,禁止了高效的并发执行2、你可以从集合、数组、生成器或者迭代器中创建Stream3、使用过滤器fi原创 2016-12-03 15:33:02 · 841 阅读 · 0 评论 -
java网络编程
java网络编程网络编程介绍通过使用套接字来达到进程间通信目的的编程就是网络编程,网络编程最重要的两点1、定位目标主机(ip地址和端口)2、如何传输数据(协议)网络编程主要的两种模型基于TCP编程模型面向连接相对可靠传输协议编程TCP:传输控制协议案列模型:打电话通话要点:基于TCP网络编程的核心在于建立连接,通过连接里获得流对象来实现数据的传输的目的。备注:TCP编程的核心在于连接,以及原创 2016-07-19 00:02:09 · 1492 阅读 · 0 评论 -
常见排序算法实践
常见排序算法实践介绍各种排序可能是很多公司面试时候会问的算法题,但是由于基础不扎实我们有一部分人可能没法当场写出代码实现。其实掌握些数据结构和算法知识对我们的成长是很有帮助的。常见的排序算法有,冒泡排序、选择排序和快速排序等。冒泡排序冒泡排序的思想就是,每经过一轮(外循环)排序就可以得到最大/最小的值。从左至右相邻的两个元素比较排序。Code分析/** * * 最差冒泡排序外循环n-1,原创 2016-07-06 23:58:26 · 397 阅读 · 0 评论 -
java线程池初识
java线程池初识概述当有多个请求到服务器需要新建线程来执行任务时,如果为每个请求都新建线程的话,那么服务器资源开销比较大,因此使用一个容器来管理线程,当请求到来的时候就从容器中取出空闲线程来处理。线程池和数据库连接池很类似,都是为了解决频繁创建比较耗资源的对象。在执行并发任务时,我们可以把任务传递给一个线程池,来替代为每个并发执行的任务都启动一个新的线程,只要池里有空闲的线程,任务就会分配一个线程原创 2016-04-11 23:03:30 · 458 阅读 · 0 评论 -
Object 类研究
Object 类研究概述java中Object是所有对象的父类,上帝类。里面的方法我们应该对其深入掌握。Object方法展示代码展示:public class Object { private static native void registerNatives(); static { registerNatives(); } //获得类对应的Class对原创 2016-04-08 16:37:18 · 274 阅读 · 0 评论 -
ThreadLocal认知学习
ThreadLocal认知学习概述java doc介绍This class provides thread-local variables. These variables differ fromtheir normal counterparts in that each thread that accesses one (via itsget or set method) has its own原创 2016-04-11 11:11:58 · 402 阅读 · 0 评论 -
java 关键字 volatile初识
java 关键字 volatile初识概述JMM提供了volatile变量定义、final、synchronized块来保证可见性。用volatile修饰的变量,线程在每次使用变量的时候,都会读取变量修改后的值。volatile很容易被误用,用来进行原子性操作。volatile关键字的两层语义1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立原创 2016-04-11 14:42:35 · 2118 阅读 · 0 评论 -
基于原生URL和URLConnection的请求组件
基于原生URL和URLConnection的请求组件介绍java的http组件有很多比如httpClient、okHttp等,但是其实java.net包就自带了原生的访问http资源的类(URL、URLConnection),学会原生的对我们理解和使用第三方组件也很有帮助,原生包的缺点就是编程相对繁琐,扩展不易。第三方组件相对而言功能强大扩展好,但是它们底层其实还是基于java.net原生类的。UR原创 2016-06-24 22:36:17 · 717 阅读 · 0 评论 -
Java 读取properties配置文件
Java 读取properties配置文件应用场景java开发中经常将一些易变配置参数放置在xml配置文件或properties配置文件。解析xml配置文件通常使用dom或sax方式,而读取properties配置文件比较容易,直接使用java.util下的Properties类读取配置文件。读取方式基于ClassLoader读取配置文件 Properties properties = new原创 2016-06-06 21:03:59 · 11748 阅读 · 0 评论 -
MD5工具类(java实现版)
MD5工具类(java实现版)介绍MD5(Message Digest Algorithm)加密算法是不对称的加密算法,因为其实不可逆的,实际上其不能算作加密算法,因为其不可解密。其实现原理是基于Hash算法(简称散列函数)。MD5算法具有以下特点1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。2、容易计算:从原数据计算出MD5值很容易(算法简单)3、抗修改性:对原数据进行任何改动原创 2016-07-13 20:14:02 · 24217 阅读 · 0 评论 -
DataUtils(java日期工具类)
DataUtils(java日期工具类)介绍在java中队日期类型的处理并不方便,通常都需要借助java.text.SimpleDateFormat类来实现日期类型和字符串类型之间的转换,但是在jdk1.8之后有所改善,jdk1.7以及之前的版本处理日期类型并不方便,可以借助Joda Time组件来处理,尤其是日期类型的一些数学操作就更是不方便。java代码/** * * 日期工具类 j原创 2016-07-13 20:38:17 · 13246 阅读 · 2 评论 -
java自带定时任务功能(Timer&TimerTask)
java自带定时任务功能(Timer&TimerTask)介绍开发中我们经常会有这样的业务,比如在凌晨的时候跑一个任务或者指定在某个时刻跑任务,这就是所谓的定时任务。通常定时任务也是异步处理的,此时我会联想到消息中间件的功能(异步与解耦),java自带了简单的定时任务功能,通过借助Timer和TimeTask可以时间简单的任务调度功能。任务调度器的最核心两点1、任务(定义具体干什么,通常实现Ru原创 2016-07-24 23:20:00 · 6189 阅读 · 1 评论 -
java对象序列化和反序列化
java对象序列化和反序列化介绍序列化指的是将内存中的java对象保存到磁盘问价中(字节码保存),反序列化是将磁盘中的文件加载到内存对象中。java对象序列化:将内存中的java对象持久化到磁盘文件中java对象反序列化:将磁盘文件中的字节码文件转为内存中java对象使用备注:需要序列化的对象通常需要实现序列化接口(不管是JDK还是第三方提供的)对象序列化主要功能:1、把对象的字节序列永久地原创 2016-07-03 22:23:30 · 499 阅读 · 0 评论 -
无线循环的两种方式
for(;;)和while(true)的区别for(;;)和while(true)都是无限循环,今天搜了下原理while VS. for 在编程中,我们常常需要用到无限循环,常用的两种方法是while (1) 和 for (;;)。这两种方法效果完全一样,但那一种更好呢?让我们看看它们编译后的代码: 编译前 编译后 while (1); mov ea原创 2016-07-15 11:02:20 · 905 阅读 · 0 评论 -
字符编码
字符编码介绍计算机中储存的信息都是用二进制数表示的;而我们在屏幕上看到的英文、汉字等字符是二进制数转换之后的结果。它们是根据指定的编码映射表查找出对应的字符来显示的。最早的编码表示美国制定的ASCII码,由于英文字符比较少,用一个字节就完全可以表示出来了,所以ASCII编码中,一个字符是占一个字节的。字节一个字节为8位(为什么是8位和当时硬件处理器发展有关,不是重点)0101 1010常用的编码原创 2016-07-05 23:30:25 · 439 阅读 · 0 评论 -
java异常机制
java异常机制介绍异常:是指阻止当前方法或者作用域继续执行的问题java异常处理机制即毁了我们的程序的简洁同时它也给予了程序的健壮性提高的系统可用率。使用不得当的异常处理方式,不仅无法给我们的程序带来好处反而会带来负面的影响。有异常就说明程序存在问题,使用异常机制可以有助于我们及时发现与修正。如果我们在编写程序的过程中不使用异常机制,那么程序一旦遇到异常就无法继续往下执行了很多情况下这并不是我原创 2016-07-15 10:49:31 · 426 阅读 · 0 评论 -
Java 8 新特性
Java 8 新特性lambda表达式Lambda表达式(也称为闭包),Lambda允许把函数作为一个方法的参数.Lambda 表达式由三个部分组成:第一部分:一个括号内用逗号分隔的形式参数,参数是函数式接口里面方法的参数第二部分:一个箭头符号:->第三部分:方法体,可以是表达式和代码块Lambda Expressions syntax is (argument) -> (body)函数式接原创 2016-11-26 15:29:07 · 595 阅读 · 0 评论