
Java基础
runyimei
程序员是个充满争议的职业,但只有他们自己心中才懂得,依靠自己的代码来生活时间很快乐的事情
展开
-
UML类图与类的关系详解
UML类图与类的关系详解 在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。下面我们转载 2016-08-29 08:46:42 · 492 阅读 · 0 评论 -
java正则表达式 Pattern Matcher类的使用
在Java中,正则表达式主要用于处理字符串,字符串的查找以及匹配等操作。在Java中与正则表达式相关的两个类是Pattern和Matcher类。Pattern类又叫模式类,Matcher类叫匹配器类,Pattern类的使用Pattern类没有共有的构造函数,只有私有的构造函数,但类提供了一个工厂方法来生成Pattern实例。 static Pattern compile(Str原创 2016-08-24 16:53:26 · 591 阅读 · 0 评论 -
java HashMap的实现原理
Java中的HashMap是根据Hash表(散列表)来实现的,Hash表的模型Hash表的一些概念。 1> capacity是指hash表的长度,size是Hash表里面实际元素的个数,size/capacity 称为装填因子,用来表示关键字个数和表长度的比值。loadFactory是所能允许的最大的元素个数填满hash表的最大比例,也就是最大的装填因子。threshold(H原创 2016-08-24 15:54:26 · 761 阅读 · 0 评论 -
Java Arrays类的使用
1> Arrays这个类是个工具类,里面的方法都是静态方法。 2> Arrays这个类主要操作的数组对象,比如int[],byte[],double[],long[],char[],Object[]等数组对象。 3> Arrays这个类里面有一些很有用的方法 a, void sort(int[] a) 将一个数组a进行排序 v原创 2016-08-24 09:10:16 · 576 阅读 · 0 评论 -
Comparable接口和Comparator接口的区别
1> Comparable接口里面的方法是 int compareTo(T o); Comparator接口里面的方法是 int compare(T o1,T o2); 2>一个类既可以实现Comparable接口也可以实现Comparator接口 如果希望一个类的比较方式有很多种,而且比较方式具有外部扩展性,那么可以实现Comparator接口,如果一个类默认的实现了C原创 2016-08-23 20:42:53 · 540 阅读 · 0 评论 -
Java 位运算(移位、位与、或、异或、非)
Java提供的位运算符有:左移( > ) 、无符号右移( >>> ) 、位与( & ) 、位或( | )、位非( ~ )、位异或( ^ ),除了位非( ~ )是一元操作符外,其它的都是二元操作符。1、左移( Test1、将5左移2位:[java] view plain copypackage com.xcy; p转载 2016-09-01 23:20:02 · 361 阅读 · 0 评论 -
Java的Random类使用
JAVA的Random类(转)Random类 (java.util) Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就是说,两个种子数相同的Random对象,第一次生成的转载 2016-09-01 21:48:11 · 339 阅读 · 0 评论 -
Java内部类
Java内部类讲解可以将一个类A的定义放在另一个类B的内部,类A就是内部类;类B叫做外围类;如下代码所示:package com.javaInnerClass;public class Parcel2 { //内部类Contents class Contents{ private int i = 11; public int value(){ return原创 2016-09-01 19:50:15 · 316 阅读 · 0 评论 -
设计模式之迭代器模式---以JDK源码为例
在访问一些集合类中的对象时,不同的集合类有不同的访问方式,这使得我们访问集合类中的元素很不方便。能不能提供一个统一的方法来访问所有的集合类中的对象,代器模式就是为解决这个问题而诞生的。在JDK的List等集合类中有iterator()方法,该方法返回一个Iterator类型的对象,其实是在ArrayList类中定义的一个内部类;下面的代码模拟JDK中ArrayList的实现来让大家了解迭代器模原创 2016-09-01 20:01:13 · 550 阅读 · 0 评论 -
类的加载、链接、初始化
在上一篇文章中介绍了Java字节代码的操纵,其中提到了利用Java类加载器来加载修改过后的字节代码并在JVM上执行。本文接着上一篇的话题,讨论Java类的加载、链接和初始化。Java字节代码的表现形式是字节数组(byte[]),而Java类在JVM中的表现形式是java.lang.Class类的对象。一个Java类从字节代码到能够在JVM中被使用,需要经过加载、链接和初始化这三个步骤。这三个步骤中转载 2016-08-23 10:39:05 · 376 阅读 · 0 评论 -
Java中的类与继承
Java:类与继承 对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础。抽象、封装、继承、多态这四大特性都离不开类,只有存在类,才能体现面向对象编程的特点,今天我们就来了解一些类与继承的相关知识。首先,我们讲述一下与类的初始化相关的东西,然后再从几个方面阐述继承这一大特性。以下是本文的目录大纲: 一.你了解类吗? 二.你了解继承吗? 三.常见的面试笔转载 2016-08-23 09:48:55 · 274 阅读 · 0 评论 -
Java打印输出数组和集合
Java打印输出数组和集合在java中是可以直接打印输出数组和集合的,不需要我们编写循环来打印输出。数组可以通过Arrays.toString(int[] )函数来输出;而因为List Set Map等集合类都实现了toString()方法,所以可以直接打印输出。例如以下代码import java.util.ArrayList;import java.util.Arra原创 2016-09-01 12:37:11 · 22877 阅读 · 3 评论 -
Java 二进制、八进制、十六进制与十进制之间的转换
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinaryString(int i) 十六进制转成十进制 Integer.valueOf("FF原创 2016-08-31 21:45:13 · 329 阅读 · 0 评论 -
Java动态代理的源码分析;Proxy与InvocationHandler
代理设计模式定义:为其他对象提供一种代理以控制对这个对象的访问。动态代理使用java动态代理机制以巧妙的方式实现了代理模式的设计理念。代理模式示例代码public interface Subject { public void doSomething(); } public class RealSubject implemen转载 2016-08-30 23:22:26 · 591 阅读 · 0 评论 -
UML建模之时序图
UML建模之时序图(Sequence Diagram) 一、时序图简介(Brief introduction) 二、时序图元素(Sequence Diagram Elements)角色(Actor)对象(Object)生命线(Lifeline)控制焦点(Focus of Control)消息(Message)自关联消息(Self-Messa转载 2016-08-29 08:56:00 · 655 阅读 · 0 评论 -
Java类中静态属性、静态语句块、属性、初始化语句块、构造函数之间的执行顺序
在一个Java类A中 在类的加载阶段,会依次从上到下执行类中的静态成员,包括静态属性的赋值、静态语句块的执行,顺序是从上到下,不分谁先谁后。类将要创建出来时,也就是new一个对象时,在执行构造函数时,执行构造函数的语句块之前,会先实例化类A的属性成员,然后再执行类A的初始化语句块,最后再执行构造函数。见如下代码的执行结果:package com.onlinetest.acmco原创 2016-09-23 15:17:31 · 1143 阅读 · 0 评论