![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 55
hongyu83916
认识有深浅,说话或许通俗,但态度必须是认真的。
展开
-
重修大学JAVA课--应用类型比较器的实现方法
if(new Comparator<Student>(){//解耦合,外部类,实现Comparator override compare();方法2 @Override public int compare(Student o1, Student o2) { // TODO Auto-generated method stub return o1.weight-o2.weight; }}.compare(st1, st)>0){ System.out.println(st1原创 2017-04-17 19:55:33 · 262 阅读 · 0 评论 -
正则表达式(十二)
正则表达式:她描述了一个规则,通过这个规则可以匹配一类字符串。 * 她是一种强大而灵活的文本处理工具(语言),大部分 * 编程语言、数据库、文本编辑器、开发环境都支持正则表达式。原创 2017-06-15 21:18:13 · 283 阅读 · 0 评论 -
JAVA动态编译之脚本引擎(十三)
// Java :(12+3)*4-5*9/3 结果等于几? 等于 45 。Java如何通过脚本引擎执行Javascritp 代码。Jdk1.6的特性。原创 2017-06-20 16:55:07 · 368 阅读 · 0 评论 -
Set 一(TreeSet与HashSet)十四
/** * set * / \ * HashSet TreeSet * 1.HashSet 存储元素必须重写hashCode()与equals()方法,我们似乎没关心过;元素不重复 * HashSet底层实现是HashMap,HashMap的底层实现是:数组+链表,其存储元素分 * 2步: * 1)判断hashCode() 如果相等 2)再判断equals() * 2.TreeSet 存储元素可以排序,返回0去重 * 1)排序元素类必须实现java原创 2017-07-11 15:58:36 · 193 阅读 · 0 评论 -
Set 二(TreeSet与HashSet)十五
* set * / \ * HashSet TreeSet * 1.HashSet 存储元素必须重写hashCode()与equals()方法,我们似乎没关心过;元素不重复 * HashSet底层实现是HashMap,HashMap的底层实现是:数组+链表,其存储元素分 * 2步: * 1)判断hashCode() 如果相等 2)再判断equals() * 靠1)2)保证去重,如果不重写上面2个方法,你试试就知道了。。。。。 * 2.Tree原创 2017-07-11 16:01:12 · 165 阅读 · 0 评论 -
引用及应用(Reference\WeakHashMap)十六
/**杂:学习资料来自网络或书籍 * 引用的四大类型:强、软、弱、虚 * 1)强引用:StrongReference,引用指向对象,gc(Garbage collection)运行时 * 不回收。 * 2)软引用:SoftReference gc运行时可能回收(jvm内存不够) * 3)弱引用:WeakReference gc运行时立即回收 * 4)虚引用:PhantomReference 类似于无引用,主要跟踪对象被回收的状态,不能单独使用, * 必须与引用队列(ReferenceQu原创 2017-07-13 11:02:06 · 273 阅读 · 0 评论 -
equals ==(不求甚解) 十六
“==”比较的是值【变量(栈)内存中存放的对象的(堆)内存地址】 基本数据类型比较:自然数值。 引用:比较的也是值,只不过不是数值,是变量本身的值(这个值是内存地址) 比如:String str="abc";str应用的值,是内存个地址。指向的对象的值 是"abc" equal用于比较两个对象的值是否相同【不是比地址】 ,比较的前提,两个比较对象的类型要一样,然后再比较值。 如果类型不一样,返回肯定是false。原创 2017-07-13 17:46:10 · 447 阅读 · 0 评论 -
equals ==(不求甚解 )补充 十七
* 总之: “==”比较的是值【变量(栈)内存中存放的对象的(堆)内存地址】 基本数据类型比较:自然数值。 引用:比较的也是值,只不过不是数值,是变量本身的值(这个值是内存地址) 其实有疑惑,可以用 javap -c EqualsTest2 (反编译class,class文件存放位置在bin目录里), 可以看到底层调用的函数 *原创 2017-07-14 17:04:36 · 181 阅读 · 0 评论 -
Thread(线程的创建) 十八
* 线程的创建(常用的3种) * 1)extends Thread,2)implements Runnable,3)implements Callable * * *说明:学习途径,网络和书本 */原创 2017-07-15 19:04:58 · 252 阅读 · 0 评论 -
线程的状态---十九
new)新生--(start())就绪-------运行-----死亡() * 2)停止线程(建议下面2中方式,温柔不暴力) * 1、自然终止:线程体执行完毕,结束任务 * 2、外部干涉 * a、定义flag属性标识 b、线程体使用flag标识 c、对外提供改变flag属性的方法 * 3)线程阻塞 * 1、join(合并线程)成员方法:t.join()方法阻塞调用此t成员方法jion的线程(calling thread),直到线程t完成, *原创 2017-07-15 19:31:31 · 221 阅读 · 0 评论 -
线程同步(synchronized)二十
* 同步(并发),多个线程访问(同一份资源)+synchronized,加锁(线程安全) * 同步:1同步方法 2同步块 synchronized(引用类型|类.class|this)原创 2017-07-15 21:05:49 · 178 阅读 · 0 评论 -
java ClassLoader 类加载器(二十二)
//学习来源:网络或教科书//自动定义类加载器--AppClassLoader--ExtClassLoader--bootstrap ClassLoader//系统默认类加载流程:双亲委托机制--先交由父类加载器加载,如果父类加载不了再回溯给子类加载器加载//线程上下文类加载器,可以摒弃,默认的加载流程。public class ClassLoaderTest {public原创 2017-08-18 17:08:17 · 224 阅读 · 0 评论 -
File.io读取文件(六)
//要实现对象反序列化/序列化必须实现Serializable接口class Student implements java.io.Serializable{ private String name; private transient int age;//不需要序列化,就用transient修饰 public Student() { }原创 2017-04-27 14:10:45 · 254 阅读 · 0 评论 -
File.io读取文件(五)
import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.DataInputStream;import java.io.原创 2017-04-26 13:53:16 · 261 阅读 · 0 评论 -
重修大学JAVA课--应用类型比较器的实现方法:完善版
//实体类实现Comparable接口,override cmopareTo。无法保证,java bean的完整性原创 2017-04-17 22:18:40 · 180 阅读 · 0 评论 -
File.io读取文件(七:总结)
一:节点流是基础,是读取写出数据文件的必经之路。处理流,加工处理的原材料是节点流。 二:操作前需明白:读还是写,读到哪里去,写到那里去。读写的对象:文件或字节数组 三:以程序为中心。程序要拿来用的,就用输入流。程序不要的存仓库的,就用输出流。原创 2017-04-29 11:11:29 · 217 阅读 · 0 评论 -
重修大学JAVA课:File.io(一)
/** * 打印给定文件下的所有文件(这里所有的文件都是抽象,只是个文件夹或文件名) * 注意操作系统无访问权限的文件,否则:java.lang.NullPointerException * @param 由文件路径或文件名构建的文件对象 */原创 2017-04-22 14:09:48 · 319 阅读 · 0 评论 -
设计模式:单例模式(十一)
设计模式,不应该是模板,应该是编程思想,学习的本质,不在于记住她,而在于她触发了你的思考!原创 2017-05-13 23:24:56 · 232 阅读 · 0 评论 -
初学Java,阶段性总结(随笔日记)
希望有一天自己的记忆里没有了语法,忘记语句,但是学会了编程序,写代码能信手拈来。。。原创 2017-05-05 12:07:08 · 253 阅读 · 0 评论 -
重修大学JAVA课:File.io(二)
*概念 缓冲流 :字节缓冲流 BufferedInputStream/BufferedOutputStream * 字符缓冲流BufferedReader/BufferedWriter * 转换流: InputStreamReader /OutputStreamWriter * 字节通向字符的桥梁/字符通向字节的桥梁原创 2017-04-24 17:15:21 · 277 阅读 · 0 评论 -
Reflection Java 反射(九)
/** * 通过反射技术,获得类对象 方法属性 * 放射获得了自由,提高了效率,丢了些性能 * 10亿次调用同一方法耗时:毫秒数 * 通过反射,耗时毫秒数:1682 通过反射,关闭安全检测,耗时毫秒数:962 常规,对象.方法,耗时毫秒数:24 */原创 2017-05-07 10:07:47 · 196 阅读 · 0 评论 -
类的加载过程,不求甚解即可(十)
jvm加载Class后,先收集static ,进行初始化(就1次)原创 2017-05-08 14:06:00 · 233 阅读 · 0 评论 -
File.io读取文件(三)
public class FileRead3 {/*** 文件-(I流+转换流+缓冲流)--->程序* 转换流,解码,指定字符集(字节到字符的桥梁)* 缓冲流提高性能 * @throws IOException */public static void main(String[] args) throws IOException {//1,建立文件与程序的联原创 2017-04-26 13:49:14 · 192 阅读 · 0 评论 -
File.io读取文件(二)
public class FileRead2 {/*** 文件-(I流+缓冲流)--》程序* 缓冲流提高性能 * @throws IOException */public static void main(String[] args) throws IOException {//1,建立文件与程序的联系File f=new File("D:/a.txt");原创 2017-04-26 13:48:18 · 196 阅读 · 0 评论 -
File.io读取文件(四)
import java.io.BufferedInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Arrays;public cla原创 2017-04-26 13:50:55 · 347 阅读 · 0 评论 -
JAVA Frame 窗体背景图片,首尾相接滚动(2)
/** *键盘方向键,控制背景图,上、下、左、右各个方位循环滚动 * */原创 2017-08-24 11:07:52 · 1545 阅读 · 0 评论