Java的学习之路
我一定要成为架构师
这个作者很懒,什么都没留下…
展开
-
重学Java多线程
文章目录实现多线程的三种方法RecursiveAction多线程框架实现多线程的三种方法RecursiveAction多线程框架原创 2019-11-10 09:38:13 · 297 阅读 · 0 评论 -
Java 注解(Annotation)
文章目录Annotation工作方式JDK5 内建Annotation限定Override父类方法@Override标示方法为Deprecated @Deprectated抑制编译程序警告@SuppressWarnings自定义Annotation类型Annotation高级特性Annotation工作方式从Java5.0版发布以来,5.0平台提供了一个正式的annoatation功能:允许开...原创 2019-01-15 08:30:51 · 10183 阅读 · 0 评论 -
装饰模式(Decorator)
文章目录装饰模式原理装饰模式角色装饰模式的特点装饰模式VS继承装饰模式继承装饰模式原理装饰模式又名包装(Wrapper)模式装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案装饰模式以对客户透明的方式动态的给一个对象附加上更多的责任。换言之,客户端并不会觉得对象在装饰前和装饰后有什么不同。装饰模式可以在不创造更多子类的情况下,将对象的功能加以扩展。装饰模式把客户端的...原创 2019-01-19 22:18:43 · 108 阅读 · 0 评论 -
递归(Recursive)
文章目录阶乘斐波那契额数列删除目录delete所谓递归(Recursion),就是方法调用自身。 对于递归来说,一定有一个出口,让递归结束,只有这样才能保证不出现死循环。阶乘package JavaBase.Recursive;public class Test1 { //循环方式计算阶乘,又叫迭代方式 public int compute(int number)...原创 2019-01-19 07:44:55 · 2448 阅读 · 0 评论 -
代理模式
文章目录代理模式动态代理类代理模式代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用代理模式一般涉及到的角色有– 抽象角色:声明真实对象和代理对象的共同接口– 代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相...原创 2019-01-13 19:30:25 · 132 阅读 · 0 评论 -
泛型高阶晋级
文章目录定义泛型类别限制泛型的可用类型类型通配声明定义泛型类别如果使用泛型,只要代码在编译时没有出现警告,就不会遇到运行时ClassCastException限制泛型的可用类型在定义泛型类别时,预设可以使用任何的类型来实例化泛型类型中的类型,但是如果想要限制使用泛型类别时,只能用某个特定类型或者是其子类型才能实例化该类型时,可以在定义类型时,使用extends关键字指定这个类型必须是继承某...原创 2019-01-08 08:39:40 · 257 阅读 · 1 评论 -
Java内部类
文章目录内部类(Inner Class)静态内部类(static inner class)内部类(Inner Class)Group related classes and thus reduce namespace clutter将相关的类组织在一起然后降低命名空间的混乱defined at a scope smaller than a package定义在小于包的一个范围内An ...原创 2019-01-18 09:52:56 · 88 阅读 · 0 评论 -
Map接口
文章目录Map接口get()和put()get()put()视图SortMap接口Map接口除了类集, Java 2还在java.util中增加了映射。**映射(map)**是一个存储关键字和值的关联或者说是关键字/值对的对象。给定一个关键字,可以得到它的值。 关键字和值都是对象。 关键字必须是唯一的。 但值是可以重复的。有些映射可以接收null关键字和null值。而有的则不行。jav...原创 2019-01-02 22:09:58 · 2298 阅读 · 0 评论 -
深入详解JVM之类加载器深度剖析
文章目录类加载器深入剖析ClassLoader(类加载器)类的加载、连接与初始化类加载器深入剖析ClassLoader(类加载器)Java虚拟机与程序的生命周期在如下几种情况下,Java虚拟机将结束生命周期- 执行了System.exit()方法- 程序正常执行结束- 程序在执行过程中遇到了异常或错误而异常终止- 由于操作系统出现错误而导致Java虚拟机进程类的加载、连接与...原创 2019-01-25 12:22:02 · 902 阅读 · 1 评论 -
Java I/O系统
文章目录Java I/O系统File类路径分隔符separatorJava I/O系统对于程序语言设计者来说,设计一个令人满意的I/O(输入输出)系统,是件艰巨的任务摘自《Thinking in Java》File类一个File类的对象,表示了磁盘上的文件或目录File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作File类直接处理文件和文件系统。File类没有指定信息怎...原创 2019-01-20 20:01:23 · 460 阅读 · 0 评论 -
正则表达式
文章目录特殊的表达式特殊的表达式Pattern pattern = Pattern.compile("a?");//零宽断言,所以为truep("".matches("a*")); //truep("weEs".matches("a*")); //falsep("".matches("a?")); //trueMatcher matcher = pattern.matche...原创 2019-08-12 17:30:20 · 177 阅读 · 0 评论 -
日期处理
文章目录What is UTC/UTWhat is GMTHow to get the current timeHow to format itHow to convert a string to a date/timeHow to process the date/time with databaseWhat is UTC/UTUTC是世界标准时间,UT是UTC科学简称What is GM...原创 2019-08-09 16:59:28 · 145 阅读 · 0 评论 -
Java之面向对象程序设计
文章目录面向对象程序设计(简称oop)类封装(encapsulation有时称为数据隐藏)对象日历举例面向对象程序设计(简称oop)面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。在OOP中,不必关心对象的具体实现,只要能够满足用户的需求即可。类类(class)是构造对象的模板或蓝图。由类构造(construct)对象的过程称为创建类的实例(inst...原创 2019-04-07 16:43:48 · 1029 阅读 · 0 评论 -
Java知识点之大数值
文章目录大数值API java.math.BigInteger 1.1java.math.BigInteger 1.1大数值 如果基本的整数和浮点数精度不能满足需求,那么可以使用java.math包中的两个很有用的类:**BingInteger和BigDecimal**。这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精...原创 2019-04-06 16:41:55 · 126 阅读 · 0 评论 -
Java网络编程详解
文章目录网络基础知识两台计算机通过网络进行通信![在这里插入图片描述](https://img-blog.csdnimg.cn/20190121193009329.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mzkw...原创 2019-01-22 11:34:21 · 1437 阅读 · 0 评论 -
I/O(续)
文章目录深拷贝(deep clone)与浅拷贝(shallow clone)浅复制与深复制概念浅复制(浅克隆)深复制(深克隆)Java的clone()方法【定义在Object类中】Java中对象的克隆说明:利用序列化来做深复制结果是:20zhangsan关于实现Serializable接口的类中的seriaIVersionUID问题深拷贝(deep clone)与浅拷贝(shallow cl...原创 2019-01-21 18:53:59 · 142 阅读 · 1 评论 -
Java异常详解
文章目录异常(Exception)自定义异常详解异常(Exception)Java 中的异常分为两大类:a) Checked exception (非 Runtime Exception)b) Unchecked exception(Runtime Exception)Java 中所有的异常类都会直接或间接地继承自 Exception。RuntimeException 类也是直接继承...原创 2019-01-15 20:08:33 · 847 阅读 · 1 评论 -
多线程(Multi-Thread)
文章目录线程概念多线程编程的目的进程单线程多线程线程与进程的区别Process vs ThreadJava线程模型多线程的优势线程的实现停止线程线程的生命周期线程的优先级多线程的同步线程组线程概念什么是线程:线程就是程序中单独顺序的流控制。线程本身不能运行,它只能用于程序中。什么是多线程:多线程则指的是在单个程序中可以同时运行多个不同的线程执行不同的任务.说明:线程是程序内的顺序...原创 2019-01-21 12:11:05 · 6581 阅读 · 1 评论 -
观察者模式(Observer)
文章目录观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够自动更新自己。观察者模式的组成抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提供一个接口,可以增加和删除观察者角色。一般用一个抽象类或接口来实现。抽象观察者角色:为所有具体的观察...原创 2019-01-17 13:11:30 · 338 阅读 · 0 评论 -
GUI图形化界面
文章目录GUI(Graphical User Interface),图形用户界面。AWTAWT 概念GUI(Graphical User Interface),图形用户界面。AWT(Abstract Window Toolkit),抽象窗口工具集,第一代的 Java GUI 组件,是重量级的。Swing, 不依赖于底层细节,轻量级的组件AWTAWT 概念GUI全程是Graphic...原创 2019-01-17 12:19:25 · 4661 阅读 · 0 评论 -
JSP随笔
文章目录CHAPTER 01 JSP简介JSP环境的搭建CHAPTER 02 JSP语法JSP基本元素常用的HTML语言标记<% %> Java程序片JSP中的注释,为了增强JSP页面的可读性Page指令标记include指令标记include动作标记param动作标记forward动作标记useBean动作标记CHAPTER 03 JSP内置对象request原创 2018-12-11 09:06:22 · 800 阅读 · 1 评论 -
String类源代码渗析
文章目录equals方法Object中的equals方法String中的equals方法代码总结equals方法该方法定义在 Object 类当中,因此 Java 中的每个类都具有该方法,对于 Object 类的 equals()方法来说,它是判断调用 equals()方法的引用与传进来的引用是否一致,即这两个引用是否指向的是同一个对象。对于 Object 类的 equals()方法来说,它等...原创 2018-12-12 20:48:06 · 183 阅读 · 0 评论 -
Java基本语句
文章目录1、流程控制语句if的用法2、循环控制语句3、break语句与continue语句1、流程控制语句if的用法第一种形式:if(布尔表达式){//待执行的代码}第二种形式:if(布尔表达式){//待执行的代码}else{//待执行的代码}第三种形式:if(布尔表达式){//待执行的代码} else if(布尔表达式){//待执行的代码} els...原创 2018-12-02 17:01:27 · 214 阅读 · 0 评论 -
运算符 Operator
文章目录1、运算精度等级2、运算符(1)关系运算符(2)逻辑运算符(3)关于逻辑运算符的短路特性(4)关于变量的自增与自减运算(5)条件运算符1、运算精度等级当有若干个变量参与运算时, 结果类型取决于这些变量中表示范围最大的那个变量类型。比如,参与运算的变量中,有整型 int,有双精度浮点型 double,有短整型 short,那么最后的结果类型就是 double。int a = ...原创 2018-12-02 16:54:00 · 192 阅读 · 0 评论 -
原生数据类型(Primitive Data Type)
文章目录1、Java 中的数据类型分为两大类2、变量与常量(1)如何定义变量?(2)如何为变量赋值?(3)综合变量定义与赋值。3、变量名(1)关于计算机系统中的数据表示位1、Java 中的数据类型分为两大类1) 原生数据类型 (Primitive Data Type)2) 引用类型(对象类型) (Reference Type)2、变量与常量所谓常量,就是值不会变化的量;所谓变量,就是值可...原创 2018-12-02 16:26:26 · 879 阅读 · 0 评论 -
Java简介
Java的版本,下载,环境变量,以及初体验。原创 2018-12-02 13:25:34 · 160 阅读 · 0 评论 -
IDE详细介绍
文章目录集合Interface CollectionInterface ListInterface SetIDE(Integrated Development Environment)集成开发环境对于 Java 中的常量的命名规则:所有单词的字母都是大写,如果有多个单词,那么使用下划线连接即可。 比如说:public static final int AGE_0F_PERSON = 20;...原创 2018-12-23 10:16:24 · 3833 阅读 · 0 评论 -
数组剖析
文章目录包装类(Wrapper Class)。 针对于原生数据类型的包装。 所有的包装类(8 个)都位于java.lang 包下。 Java 中的 8 个包装类分别是: Byte, Short, Integer, Long, Float, Double,Character, Boolean。 他们的使用方式都是一样的,可以实现原生数据类型与包装类型的双向转换。2. 数组(Array): ...原创 2018-12-18 22:56:09 · 204 阅读 · 0 评论 -
JAVA语言的反射机制
文章目录Java语言的反射机制Java语言的反射机制在Java 运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法?答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自于Java 语言的反射(Reflection)机制。Java 反射机制主要提供了以下功能:在运行时判断任意一个对象所属的类。在运行时构造任意一个类的对象。...原创 2019-01-11 08:54:49 · 230 阅读 · 0 评论 -
泛型详解
文章目录泛型Generic多个泛型实现数组的泛型集合的泛型泛型的泛型泛型泛型是JDK1.5中一个最重要的特征。通过引入泛型,我们将获得编译时类型的安全和运行时更小地抛出ClassCastExceptions的可能。ClassCastExceptions(类型转换异常)我们来举一个小例子:package fiftyThird;import java.util.List;import ...原创 2019-01-05 21:57:59 · 252 阅读 · 1 评论 -
自定义泛型与泛型的常见陷阱
文章目录ArrayListIteratorSetMapArrayList之前我们使用ArrayList没有使用泛型,是错误的我们要改正过来。package fiftyFourth;import java.util.ArrayList;import java.util.List;public class ArrayListTest { public static void mai...原创 2019-01-05 21:57:26 · 383 阅读 · 0 评论 -
从以前版本遗留下来的类和接口
文章目录Enumeration接口VectorVector的构造函数:HashtableHashtable的构造函数如下所示:Propertiesjava.util的最初版本中不包括类集框架。取而代之,它定义了几个类和接口提供专门的方法用于存储对象。随着在Java 2中引入类集,有几种最初的类被重新设计成支持类集接口。因此它们与框架完全兼容。尽管实际上没有类被摈弃,但其中某些仍被认为是过时的。当...原创 2019-01-05 14:34:57 · 217 阅读 · 0 评论 -
HashSet与HashMap源码深入剖析
文章目录HashSet 底层是使用 HashMap 实现的。 当使用 add 方法将对象添加到 Set 当中时,实际上是将该对象作为底层所维护的 Map 对象的 key,而 value 则都是同一个 Object对象(该对象我们用不上);HashMap 底层维护一个数组,我们向 HashMap 中所放置的对象实际上是存储在该数组当中;当向 HashMap 中 put 一对键值时,它会...原创 2019-01-05 10:02:36 · 107 阅读 · 0 评论 -
LinkedList实现Stack与Queue
文章目录ArrayListLinkedListArrayList无参的构造方法我们已经了解了,接下来我们了解下有参的构造方法public ArrayList(int initialCapacity)Constructs an empty list with the specified initial capacity. (构造一个空的列表使用初始的容量)initialCapacity ...原创 2018-12-31 11:43:53 · 1799 阅读 · 1 评论 -
Set(集合)
文章目录HashSetTreeSetHashSetHashSet扩展AbstractSet并且实现Set接口。它创建一个类集,该类集使用散列表进行存储。散列表通过使用称之为散列法的机制来存储信息。在散列(hashing)中,一个关键字的信息内容被用来确定唯一的一个值,称为散列码(hash code)。而散列码被用来当做与关键字相连的数据的存储下标。关键字到其散列码的转换是自动执行的——你...原创 2018-12-31 09:58:34 · 340 阅读 · 0 评论 -
策略模式(Strategy)
文章目录策略模式(Strategy Pattern)策略模式的定义策略模式的意义策略模式的组成策略模式的实现策略模式的编写步骤Collections策略模式(Strategy Pattern)策略模式中体现了两个非常基本的面向对象设计的原则封装变化的概念编程中使用接口,而不是对接口的实现面向接口的编程策略模式的定义定义一组算法,将每个算法都封装起来,并且使它们之间可以互换...原创 2019-01-03 22:06:21 · 230 阅读 · 0 评论