Java
文章平均质量分 74
java算法、知识点总结
小猴子豆芽菜
一名90后程序猿,现就任于ThoughtWorks,从事软件开发、大数据开发,同时也是一位健身、羽毛球爱好者。
展开
-
JVM:类的加载过程
类的加载过程类的加载过程整体可以分为五个阶段:加载、验证、准备、解析、初始化,其中验证、准备和解析又被概括为链接。加载通过一个类的全限定名获取定义此类的二进制字节流;将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构;在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口;加载.class文件的方式从本地系统中直接加载;通过网络获取;从Zip压缩包中读取;运行时计算生成,使用最多的是:动态代理技术;由其他文件生成;从专原创 2020-06-28 13:25:49 · 344 阅读 · 0 评论 -
事物的特性和隔离级别
一、事物的特性(ACID) 1.原子性(Atomicity):原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。 2.一致性(Consistency):一个事务中,事务前后数据的完整性必须保持一致。 3.隔离性(Isolation):事务的隔离性是指多个用户并发访问数据库时,一个用户的事务不能被其它用户的事务所干扰,多个并发 事务之间数据要相互隔离。 ...原创 2018-03-13 22:24:59 · 337 阅读 · 0 评论 -
JDBC事务控制
默认是自动事务: 执行sql语句:executeUpdate() ---- 每执行一次executeUpdate方法代表事务自动提交。通过jdbc的API手动事务: 开启事务:conn.setAutoComnmit(false); 提交事务:conn.commit(); 回滚事务:conn.rollback();package connection;import ja...原创 2018-03-11 17:31:12 · 890 阅读 · 0 评论 -
BigDecimal加减乘除运算
java.math.BigDecimal。BigDecimal一共有4个够造方法,让我先来看看其中的两种用法:第一种:BigDecimal(double val)Translates a double into a BigDecimal.第二种:BigDecimal(String val)Translates the String repre sentation of a BigDecimal i...转载 2018-05-11 15:10:08 · 2655 阅读 · 0 评论 -
Java的初始化块、静态初始化块、构造函数的执行顺序及用途
Java与C++有一个不同之处在于,Java不但有构造函数,还有一个”初始化块“(Initialization Block)的概念。下面探究一下它的执行顺序与可能的用途。执行顺序 首先定义A, B, C三个类用作测试,其中B继承了A,C又继承了B,并分别给它们加上静态初始化块、非静态初始化块和构造函数,里面都是一句简单的输出。 主类Main里面也如法炮制。 1 class A { 2 ...转载 2018-02-24 18:15:40 · 383 阅读 · 0 评论 -
java:邻接表无向图的链表实现法
首先画出邻接表图:分析: 观察右边的邻接表可以发现,A~E每个顶点都有自己的编号,每个顶点又跟其他数组相关联。我们可以把所有的顶点看做一个数组,而与每个顶点相关联的其他顶点又是一个数组,那么整个邻接表就是一个二维数组。也可以看作是一个 List<ArrayList<T>>对象。代码实现:package my.graph;import java.util.Arr...原创 2018-06-14 01:27:08 · 3228 阅读 · 0 评论 -
Java JDK常用的包以及包中的类和方法:java.lang包
java.lang: Java.lang包是java语言体系中其他所有类库的基础,已经内嵌到java虚拟机中,而且以对象的形式创建好了,所以,我们在使用java.lang包时不需要再使用import将其导入,可以直接使用java.lang包中的所有类以及直接引用某个类中的敞亮、变量和操作方法。类名功能Boolean封装了boolean类型的值以及一些操作该类型的方法Byte封装了byte类...原创 2018-04-20 14:07:04 · 1391 阅读 · 2 评论 -
java Math类常用方法总结
public class Main { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(Math.E);//比任何其他值都更接近 e(即自然对数的底数)的 double 值。 System.out.p...转载 2018-04-20 13:59:05 · 530 阅读 · 0 评论 -
java中Math.ceil()显示分页
用 法:Math.ceil(double x/y);功 能: 向上取整,即返回大于或等于X/y结果值的整数。当X/Y结果整除时直接返回结果,否则小数位舍去整数位加1。实例:写分页的时候要根据查到的记录总数totalCount和每页数据数currentCount,求出总共有多少页。※totalCount和currentCount都为int型int totalPage = (int)Math.ceil...原创 2018-04-04 12:36:01 · 2172 阅读 · 0 评论 -
Java知识点及常见问题汇总之一:面向对象编程和常见问题
面向对象编程(OOP)java是一个支持并发、基于类和面向对象的计算机编程语言。其优点有: 1)代码开发模块化,更易于维护和修改; 2)代码复用性高; 3)增强代码的可靠性和=-【灵活性; 4)面向对象编程有很多重要的特性,比如:封装、继承、多态和抽象。封装 封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Java 当...原创 2018-05-06 17:18:30 · 504 阅读 · 0 评论 -
java修饰符详解
Java语言提供了很多修饰符,主要分为以下两类:访问修饰符非访问修饰符修饰符用来定义类、方法或者变量,通常放在语句的最前端。我们通过下面的例子来说明:123456789public class className { // ... } private boolean myFlag; static final double weeks = 9.5; protected static final ...转载 2018-05-06 13:16:29 · 186 阅读 · 0 评论 -
java值传递和对象传递
1、需要明白的概念: 堆和栈:Java中基本数据类型的值和对象的引用保存在栈中,具体对象值保存在堆中。传递原理: 一个方法传递的参数如果是基本数据类型,则是对具体值的拷贝;如果是对象数据类型,则是对对象引用地址值的拷贝,而非具体值拷贝。下面分析三种情况:①一个方法不能改变传入基本类型的参数值。 示例代码:public class Test2 { public static void ma...转载 2018-05-06 17:07:18 · 274 阅读 · 0 评论 -
Java知识点及常见问题汇总之二:集合类、垃圾收集器、异常处理和Servlet
集合类1.集合类框架的基本接口有哪些? 1)Collection接口:集合类的根接口,Java中没有提供这个接口的直接的实现类。但是却让其被继承产生了两个接口,就是Set和List。Set中不能包含重复的元素。List是一个有序的集合,可以包含重复的元素,提供了按索引访问的方式。 2)Set(无序、不能重复):Set里存放的对象是无序,不能重复的,集合中的对象不按特定的方式排序,只是简...原创 2018-05-06 18:43:58 · 241 阅读 · 0 评论 -
Java枚举类:Enum详解
有的人说,不推荐使用枚举。有的人说,枚举很好用。究竟怎么使用,如何使用,仁者见仁智者见智。总之,先学会再说~为什么要引入枚举类一个小案例你写了一个小程序,不过好久不用了,突然有一天,你想使用一下它。程序要想正确运行,需要将今天星期几存到数据库里。这个时候,你开始犯难了。当初的你还很年轻,不懂程序界的险恶,设计这个程序的时候,傻不拉几把这个字段设计为int类型的,用0代表周日,1代表周一。。。6代表...转载 2018-06-30 20:52:48 · 4287 阅读 · 0 评论 -
设计模式:六大原则
关于设计模式的六大设计原则的资料网上很多,但是很多地方解释地都太过于笼统化,我也找了很多资料来看,发现CSDN上有几篇关于设计模式的六大原则讲述的比较通俗易懂,因此转载过来。 原作者博客链接:http://blog.csdn.net/LoveLion/article/category/738450/7一.单一职责原则 原文链接:http://blog.csdn.net/lovelion/ar...转载 2018-07-02 00:27:54 · 315 阅读 · 0 评论