java基础
文章平均质量分 82
manonga
这个作者很懒,什么都没留下…
展开
-
java基础-this和super的用法总结
super和this的异同: super(参数):调用基类中的某一个构造函数(应该为构造函数中的第一条语句) this(参数):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句) super: 它引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同成员定义时如:super.变量名 super.成员函数据名(实参) this:它代表当前对象名(在程序中易产生二义性之处,应使用this来指明当前对象;如果函数的转载 2017-02-13 14:39:26 · 232 阅读 · 0 评论 -
类加载器详解
首先来了解一下字节码和class文件的区别:我们知道,新建一个Java对象的时候,JVM要将这个对象对应的字节码加载到内存中,这个字节码的原始信息存放在classpath(就是我们新建Java工程的bin目录下)指定的目录下的.class文件,类加载需要将.class文件导入到硬盘中,经过一些处理之后变成字节码在加载到内存中。下面来看一下简单的例子:[java] view转载 2017-06-27 12:22:38 · 322 阅读 · 0 评论 -
我们能从java的HelloWorld学到什么?
这是每个Java程序员都知道的。虽然简单,但是从一个简单的问题可以引入更深的思考。在这篇文章中,我们将讨论这个简单的程序。如果能更多的帮到你,请留下宝贵的意见。HelloWorld.javapublic class HelloWorld { /** * @param args */ public static void main(String[] args) { // TODO转载 2017-07-04 14:35:30 · 343 阅读 · 0 评论 -
java反射技术
今天我们来看一下Java中的反射技术:首先来了解一下Java中的反射的一些概念:Java中的反射是1.2引入的反射的基石:class类Class类的各个实例对象分别对应各个类在内存中的字节码,例如Person类的字节码,ArrayList类的字节码,等等。一个类被类加载器加载到内存中,占用一片存储空间,这个空间里面的内容就是类的字节码,不同的类的字节码是不同的,所以他们在内存中转载 2017-07-04 11:03:35 · 564 阅读 · 0 评论 -
哈希表(散列表)原理详解
什么是哈希表? 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。记录的存储位置=f(关键字)这里的对应关系f称为散列函数,又称为哈希(Hash函数),采用散列技术将记录存储在一块连续的存储空间中,这块转载 2017-06-22 15:19:50 · 526 阅读 · 0 评论 -
Java中@Override的作用
@Override是伪代码,表示重写(当然不写也可以),不过写上有如下好处:1、可以当注释用,方便阅读;2、编译器可以给你验证@Override下面的方法名是否是你父类中所有的,如果没有则报错。例如,你如果没写@Override,而你下面的方法名又写错了,这时你的编译器是可以编译通过的,因为编译器以为这个方法是你的子类中自己增加的方法。 举例:在重写父类的onCreate时,在方法转载 2017-06-08 09:56:06 · 254 阅读 · 0 评论 -
常用算法的时间复杂度
1、时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。(2)时间复杂度原创 2017-04-24 14:32:54 · 1443 阅读 · 0 评论 -
java 堆排序
1、基本思想: 堆排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种,对直接选择排序的有效改进。可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。大根堆的要求是每个节点的值都不大于其父节点的值,即A[PARENT[i]] >= A[i]。在数组的非降序排序中,需要使用的就是大根堆,因为根据大根堆的要求可知,最大原创 2017-04-24 14:21:56 · 227 阅读 · 0 评论 -
java 归并
基本思想: 归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。归并排序示例: 合并方法:设r[i…n]由两个有序子表r[i…m]和r[m+1…n]组成,两个子表长度分别为n-i +1、n-m。j=m+1;k=i;i=i; //置两个子表的起始下标原创 2017-04-21 15:07:17 · 254 阅读 · 0 评论 -
java 希尔排序
1、基本思想:先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接插入排序。2、操作方法:选择一个增量序列t1,t2,…,tk,其中ti>tj,tk=1;按增量序列个数k,对序列进行k 趟排序;每趟排序,根据对应的增量ti,将待排序列分割成若干长度为m 的子序列,分别对各子表进行直接插入排序。仅增量因子为1 时,原创 2017-04-20 15:57:26 · 244 阅读 · 0 评论 -
java 快排
通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分关键字小,则分别对这两部分继续进行排序,直到整个序列有序。 把整个序列看做一个数组,把第零个位置看做中轴,和最后一个比,如果比它小交换,比它大不做任何处理;交换原创 2017-04-19 14:43:40 · 369 阅读 · 0 评论 -
word文档从服务器导出(用freemarker模板导出)
该方法适合小的java程序,当用到javaWeb时发现导出的word在服务器上,而不是下载到客户端,接下来这篇文章是写从服务器上下载文件到本地,下载时浏览器弹出下载框,乱码在代码里已处理。注意,不要用ajax传参,因为ajax只能处理文本信息,不能处理二进制信息。原创 2017-04-10 15:27:34 · 2580 阅读 · 1 评论 -
Java文件操作①——XML文件的读取
一、邂逅XML文件种类是丰富多彩的,XML作为众多文件类型的一种,经常被用于数据存储和传输。所以XML在现今应用程序中是非常流行的。本文主要讲Java解析和生成XML。用于不同平台、不同设备间的数据共享通信。XML文件的表现:以“.xml”为文件扩展名的文件; 存储结构:树形结构; 节点名称区分大小写。1、 id为属性, 1 id为节点2、xml文件开头要加上版转载 2017-03-14 09:26:38 · 349 阅读 · 1 评论 -
使用Spring的@Scheduled实现定时任务
Spring配置文件xmlns加入xmlns:task="http://www.springframework.org/schema/task"xsi:schemaLocation中加入http://www.springframework.org/schema/taskhttp://www.springframework.org/schema/task/spring-ta转载 2017-03-13 17:00:40 · 261 阅读 · 0 评论 -
java web 项目中 简单定时器实现 Timer
实现一个定时清理临时文件夹的任务 Timer这个类最终功能是每天某个时间点(如每晚22点)执行某一功能。首先,介绍Java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask)如: 每隔一个小时执行任务 timer.schedule(TimerTask, 0转载 2017-03-13 15:08:54 · 6718 阅读 · 1 评论 -
如何通过配置log4j.xml来打印指定类或指定级别的日志信息
把指定类的日志信息输出到指定appender里:============================================================ 同样,在root元素里不要指定该appender,如下:转载 2017-03-21 16:42:18 · 5948 阅读 · 0 评论 -
通过一个word模板来生成新的word并且填充内容
关于用Java编写生成word文档,动态添加数据到word文档的一些心得,经过翻阅了无数的有用的和无用的资料以后,总算找到了一种靠谱的方法1.概述经过反反复复的查阅资料,总算找到了一个靠谱的生成word的方案,这里分享给大家. 2.需求首先我们的需求是通过一个指定的word模板来生成新的word并且填充内容,内容是我们在布局页面上面就写好的,比如说EditText,TextView转载 2017-03-21 16:19:15 · 31766 阅读 · 8 评论 -
注解的使用
我们知道注解是在JDK1.5引入的,可能有的人没有用过注解,所以感觉注解这个东西没有什么用,但是深入了解注解,对以后学习框架有所帮助的,后面提到的JavaWeb的框架中很多都是基于注解的技术,其实注解你可以把他认为是一种标记,和接口差不多,我们知道有些接口只起到标记作用(通常叫做标记接口如:Serializable,Cloneable等,就是接口中没有任何东西,只做为一种标记),下面来看一下注转载 2017-07-06 11:11:11 · 345 阅读 · 1 评论