
java笔记
seeJavaDocs
这个作者很懒,什么都没留下…
展开
-
内部类
转自:http://www.cnblogs.com/dolphin0520/p/3811445.html说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉。原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法。今天我们就来一探究竟。下面是本文的目录大纲: 一.内部类基础 二.深入理解内部类 三.内转载 2016-09-24 17:03:24 · 184 阅读 · 0 评论 -
java 重写hashcode()
主要原因是默认从Object继承来的hashCode是基于对象的ID实现的。如果你重写了equals,比如说是基于对象的内容实现的,而保留hashCode的实现不变,那么很可能某两个对象明明是“相等”,而hashCode却不一样。这样,当你用其中的一个作为键保存到hashMap、hasoTable或hashSet中,再以“相等的”找另一个作为键值去查找他们的时候,则根本找不到。资源:h转载 2017-01-11 15:21:28 · 568 阅读 · 0 评论 -
java 编程原则
面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton、Decorator、Observer这样的设计模式,而不重视面向对象的分析和设计。甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程转载 2016-11-15 15:30:56 · 242 阅读 · 0 评论 -
项目路径的几种获取方式
// 第一种:获取类加载的根路径 D:\git\daotie\daotie\target\classes File f = new File(this.getClass().getResource("/").getPath()); System.out.println(f); // 获取当前类的所在工程路径; 如果不加“/” 获转载 2016-10-20 10:48:50 · 339 阅读 · 0 评论 -
Thread join()方法理解
本章涉及到的内容包括:1. join()介绍2. join()源码分析(基于JDK1.7.0_40)3. join()示例1. join()介绍join() 定义在Thread.java中。join() 的作用:让“主线程”等待“子线程”结束之后才能继续运行。这句话可能有点晦涩,我们还是通过例子去理解:// 主线程public class Father exten转载 2016-11-10 11:22:35 · 585 阅读 · 0 评论 -
JDK代理的实现
在java的动态代理机制中,有两个重要的类或接口,一个是 InvocationHandler(Interface)、另一个则是 Proxy(Class),这一个类和接口是实现我们动态代理所必须用到的。每一个动态代理类都必须要实现InvocationHandler这个接口,并且每个代理类的实例都关联到了一个handler,当我们通过代理对象调用一个方法的时候,这个方法的调用就会被转发为由Invoca原创 2016-10-03 08:34:42 · 183 阅读 · 0 评论 -
线程死锁问题
package com.yaspeed.threadnotice;/** * 测试线程死锁问题 * 问题分析:线程死锁的原因线程之间所需要的资源被对方占有不释放导致 * 例如:线程A有资源A1,线程B有资源B1,现在线程A占有A1的情况下,需要资源B1, * 线程B占有B1的情况下需要A1,最终导致死锁的产生 * @author wd */public class TestDe原创 2016-10-01 22:46:32 · 235 阅读 · 0 评论 -
java实现生产者与消费者问题
一.问题描述 生产者与消费者问题是线程同步中经常说起的一个问题,大致的描述类似于:生产者向篮子中生产产品,篮子最多能生产20个产品,消费者从篮子中消费产品,如果篮子产品为0则不能够再消费。分析这个问题可知,生产者和消费者是两个线程,他们同时对共享资源篮子中的产品进行操作,这就需要线程同步和通信来解决这个问题。二. 举例生产原创 2016-10-01 22:19:33 · 339 阅读 · 0 评论 -
java 文件复制的几种方式
摘要: 尽管Java提供了一个可以处理文件的IO操作类。 但是没有一个复制文件的方法。 复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候。 然而有几种方法可以进行Java文件复制操作,下面列举出4中最受欢迎的方式。1. 使用FileStreams复制这是最经典的方式将一个文件的内容复制到另一个文件中。 使用FileInputStream读取文件A的字节,使用Fil转载 2016-11-04 10:14:59 · 220 阅读 · 0 评论 -
序列化之readResolve方法
原文:点击打开链接For Serializable and Externalizable classes, the readResolve method allows a class to replace/resolve the object read from the stream before it is returned to the caller. By implement转载 2016-09-27 12:34:18 · 330 阅读 · 0 评论 -
static和transient变量序列化问题
看下面的代码:1.Person.javaimport java.io.*;class Person implements Serializable{ public String name; public Person(String name){ this.name=name; System.out.println("构建一个Person对象");转载 2016-09-27 12:01:30 · 1659 阅读 · 1 评论 -
IO流
初学Java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是java io 比较基本的一些处理流,除此之外我们还会提到一些比转载 2016-09-26 22:53:49 · 233 阅读 · 0 评论 -
java序列化
很多商业项目用到数据库、内存映射文件和普通文件来完成项目中的序列化处理的需求,但是这些方法很少会依靠于Java序列化。本文也不是用来解释序列化的,而是一起来看看面试中有关序列化的问题,这些问题你很有可能不了解。“Java序列化指的是将对象转换程字节格式并将对象状态保存在文件中,通常是.ser扩展名的文件。然后可以通过.ser文件重新创建Java对象,这个过程为返序列化”Java序列化的API中转载 2016-09-26 23:00:15 · 383 阅读 · 0 评论 -
ThreadLocal学习
Java并发编程:深入剖析ThreadLocal 想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。 以下是本文目录大纲: 一.对ThreadLocal的理解 二.转载 2016-09-26 14:35:23 · 195 阅读 · 0 评论 -
java 泛型
一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(String[] args) { 4 List list = new ArrayList(); 5 list.add("qqyumidi")转载 2016-09-25 09:41:12 · 189 阅读 · 0 评论 -
java代码块
代码块是指使用“{}”括起来的一段代码,根据位置不同,代码块可以分为四种:普通代码块、构造块、静态代码块、同步代码块一.普通代码块直接定义在方法中的代码块称为普通代码块public class Test1{ public static void main(String args[]){ { // 普通代码块 int x = 30 ; // 就属于一个局部变量原创 2016-09-24 17:51:15 · 225 阅读 · 0 评论 -
java 中hashcode作用
以下是关于HashCode的官方文档定义:[plain] view plain copy hashcode方法返回该对象的哈希码值。支持该方法是为哈希表提供一些优点,例如,java.util.Hashtable 提供的哈希表。 hashCode 的常规协定是: 在 Java 应用程序执行期间,在同一对象上多次调用 hashCode 方法时,必须一致地返回转载 2017-02-08 10:22:12 · 342 阅读 · 0 评论