
Java
文章平均质量分 84
zhangphh
欲戴王冠,必承其重
展开
-
Java常用类一
1.System类:阅读源码得知:**Among the facilities provided by the System classclass contains several useful class fieldsand methods. It cannot be instantiated.are standard input, standard output, and error ...原创 2018-10-17 22:11:33 · 126 阅读 · 0 评论 -
Java设计模式之工厂模式
综述:简单的说工厂模式就是提供一个工厂方法,传入指定的参数得到我想要的对象。为什么要使用工厂模式?1、考虑这样一个问题,对于一个类A,当A被使用的地方很多,则很多地方都会使用new来创建对象,肯定会导致使用A的地方有很多代码重复。2、考虑当A有功能改变时,使用A的地方的所有代码都需要改变,很是麻烦。3、如果一个抽象类有很多子类,当需要更改需求,调用其他子类时,则需要修改业务逻辑的类,这样不...原创 2019-04-24 23:19:47 · 84 阅读 · 0 评论 -
Java设计模式之单例模式
综述:顾名思义,单例设计模式就是类只允许有一个实例,而且是自行实例化之后想整个系统提供此实例。使用单例设计模式的优点就是节省资源,避免了频繁的创建和销毁,减少内存开销单例的实现方式1、饿汉式单例顾名思义,饿汉式就是在类初始化的时候就自行实例化public class Singleton { //饿汉式单例 private static Singleton singleton...原创 2019-04-24 20:37:37 · 81 阅读 · 0 评论 -
Java反射之invoke()方法
本文原址:浅析invoke过程invoke方法用来在运行时动态地调用某个实例的方法。它的实现如下:@CallerSensitivepublic Object invoke(Object obj, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTarge...转载 2019-04-23 20:13:13 · 3506 阅读 · 1 评论 -
Java高级之反射篇
一、什么是反射?反射就是在运行过程中,对于任意一个类,都能够知道其所有方法和属性;对于任意一个对象,都能调用其任意方法和属性。这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。总的来说反射就是把类中的各个成员映射成一个对象。使用反射的前提是要有 .class 文件。在Java中,万物皆的对象,当我们创建了一个类的时候,这个类也是一个对,是java.lang.Class...原创 2019-04-23 19:59:14 · 351 阅读 · 0 评论 -
位运算及其常用操作
Java位运算位运算符分为逻辑运算符(~、|、&、^)和移位运算符(<<、>>、>>>)。位运算操作的是二进制的数。逻辑运算符1、^(亦或运算) ,针对二进制,相同的为0,不同的为1。2、&(与运算) 针对二进制,只要有一个为0,就为03、| 两个位只要有一个为1,那么结果就是1,否则就为04、~ 取反5、原码 原码就是符号位...原创 2019-02-09 16:31:46 · 1786 阅读 · 0 评论 -
java面向对象及其三大基本特征
面向对象编程思想面向对象,简单来说就是由动作的执行者变为动作的操控者。结合具体例子来说就是使用某个人或者工具所具有的功能而不用去管功能的具体实现方式。例如现实中的项目开发,老板想要实现某些功能,但是他自己不会这些技术,所以他就会让员工去做这些事情,通过借助别的拥有你想要实现某些功能的过程就可以理解为面向对象。面向对象是相对于面向过程的。类与对象接着来了解下什么是 类与对象,世界是由什么组成的...原创 2019-02-07 22:25:31 · 558 阅读 · 0 评论 -
散列表及HashMap简析(JDK1.8)
首先了解位运算的概念:1、^(亦或运算) ,针对二进制,相同的为0,不同的为1。2、&(与运算) 针对二进制,只要有一个为0,就为03、| 两个位只要有一个为1,那么结果就是1,否则就为04、~ 取反5、原码 原码就是符号位加上数字的二进制表示。6、反码一个数如果为正,则它的反码与原码相同;一个数如果为负,则符号位为1,(符号位不变化,其余位数取反)。换言之 该数的绝对值取...原创 2018-11-10 13:09:37 · 349 阅读 · 0 评论 -
MySQL的常用简单操作
写在前面 不要轻易删除数据库文件,否则卸载重装很麻烦 mysql的安装、初始化以及环境变量配置等不再重复,本文用以记录对mysql的常用操作。1 . 连接数据库,开启cmd进入命令行下,在进入到数据库安装的目录的bin目录下,输入mysql -uroot -p 回车,输入密码,再回车即可连接到数据库。2. 查看都有哪些数据库,输入命令show databases;显示出数据库都有哪...原创 2018-11-01 19:40:25 · 168 阅读 · 0 评论 -
java IO字符流与字节流简单使用示例
1.Reader && WriterReader java.lang.Object |-- java.io.Reader//常用方法 |-- int read() //读取单个字符 |-- int read(char[] cbuf) //将字符读入数组中 |-...原创 2018-10-30 22:14:09 · 218 阅读 · 0 评论 -
Java多线程(一)基础
1.关于线程与进程的区别:线程指进程中的一个执行场景,也就是执行流程,同一个进程中的线程共享其进程中的内存和资源(共享的内存是堆内存和方法区内存,栈内存不共享,每个线程有自己的,一个线程一个栈。);每个进程是一个应用程序,都有独立的内存空间。多线程的使用是为了提高程序的使用率,而非T提高速度。2.实现多线程的常见方式a.继承Thread类public class Test extends T...原创 2018-10-23 21:05:13 · 131 阅读 · 0 评论 -
Java堆和栈分配原理简析以及静态和非静态关系简述
1.栈:函数中定义的基本类型变量以及对象的引用变量都是存在于栈中,当定义了一个变量后,就会在栈中为其分配内存空间,当这个变量的作用域结束后,就会释放此变量的内存空间,以便另作他用。栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享。注意:栈中的共享与堆中的共享是不同的,在栈中,例如 int a = 3; int ...原创 2018-10-21 19:11:47 · 320 阅读 · 0 评论 -
Java面向对象笔记(封装、继承、多态、抽象类、接口)
面向对象的思想在现实生活中很常见,例如项目开发,老板想要实现某个功能,但是他自己不会这些技术,所以他就会让员工去做这些事情,通过借助别的拥有你想要实现某些功能的过程就可以理解为面向对象。面向对象有三大特性:封装、继承、多态。1.封装:即是把函数或者工具类的实现过程隐藏起来,可以通过创建对象或者实现接口来使用已定义好的功能。Java API是一个很好的例子。2.继承:假设在描述某些事物的时候我...原创 2018-10-16 21:51:03 · 1008 阅读 · 0 评论 -
XML解析之DOM解析
本文是自己在学习解析XML过程中的笔记,发布在这里是为了以后更好的改进和深入学习,同时也希望能够帮助到有需要的同学DOM解析XML时DOM分析器把整个XML文档转化成DOM树放在了内存中,因此,当文档比较大或者结构比较复杂时,对内存的需求就比较高。而且,对于结构复杂的树的遍历也是一项耗时的操作。所以,DOM分析器对机器性能的要求比较高,实现效率不十分理想。不过,由于DOM分析器所采用的树结构的思...原创 2018-10-15 17:56:25 · 175 阅读 · 0 评论 -
DOM4j解析XML
初学DOM4j解析XML,学习过程中仍存在许多问题,在网上找了一些资料自己试着写了一下,不在叙述XML及DOM4j相关知识1.建立一个XML,如下所示&amp;lt;?xml version=&quot;1.0&quot;?&amp;gt;&amp;lt;bookstore&amp;gt;&amp;lt;book id=&quot;1&quot;&a原创 2018-10-15 13:35:07 · 163 阅读 · 0 评论 -
JDBC入门笔记(mysql)
JDBC,即 Java DataDase Connectivity(java数据库连接),是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。一、常见的JDBC组件:1.DriverManger:这个类管理数据库驱动程序的列表。确定...原创 2018-10-16 14:37:57 · 230 阅读 · 0 评论 -
Java常用类二
1.Math类:a.abs(T a);绝对值函数b.**exp(double x);**返回欧拉数 e 的 double 次幂的值c.ceil(double a)返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。d.floor(double a)返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。e.max(int a, in...原创 2018-10-18 08:29:08 · 111 阅读 · 0 评论 -
Java设计模式之装饰模式
综述:装饰模式,它的意图是动态的给对象添加一些额外的职责,该模式以对客户端透明的方式扩展对象的功能。使用装饰模式代替子类的原因:当不能采用生成子类的方法进行扩充时。一种情况是,可能有大量独立的扩展,为支持每一种组合将产生大量的 子类,使得子类数目呈爆炸性增长。另一种情况可能是因为类定义被隐藏,或类定义不能用于生成子类。装饰模式实例1、先看一张类图2、对上面类图的四大部分解释:2.1、in...原创 2019-04-25 09:17:59 · 169 阅读 · 0 评论