![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java学习
xingfeng2010
这个作者很懒,什么都没留下…
展开
-
Java对象的集合
http://blog.csdn.net/lyflower/article/details/4206500一 、 数组:数组(array)是相同类型变量的集合,可以使用共同的名字引用它。数组可被定义为任何类型,可以是一维或多维。数组中的一个特别要素是通过下标来访问它。数组提供了一种将有联系的信息分组的便利方法。注意:如果你熟悉C/C++,请注意, Java数组的工作原理与它们不同。转载 2012-08-14 16:49:13 · 503 阅读 · 0 评论 -
构造器Constructor
构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。构造器用来确保每个对象都会得到初始化。当对象被创建时,如果该类具有构造器,java就会在用户有能力操作对象之前自动调用相应的构造器,所以保证了初始化地进行。在java中创建和初始化被捆绑在了一起,两者不能分离。注意构造器没有返回值,与返回值为空(void)明显不同。如果不想被实例化,可转载 2012-08-24 13:16:40 · 500 阅读 · 0 评论 -
JAVA 后期绑定
首先需要知道绑定、前期绑定、后期绑定三者的概念。 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。 前期绑定:在程序执行前方法已经被绑定,此时由编译器或其它连接程序实现。例如:C。 后期绑定:在运行时根据具体对象的类型进行绑定。 在了解了三者的概念之后,很明显我们发现java属于后期绑定。在java中,几乎所有的方法都是后期绑定的,在运行时动态绑定方法属于子类还转载 2012-08-24 19:57:52 · 1916 阅读 · 0 评论 -
Java synchronized
http://blog.csdn.net/openpk/article/details/5383873 众所周知,在Java多线程编程中,一个非常重要的方面就是线程的同步问题。关于线程的同步,一般有以下解决方法:1. 在需要同步的方法的方法签名中加入synchronized关键字。2. 使用synchronized块对需要进行同步的代码段进行同步。3. 使用JD转载 2012-10-10 10:55:35 · 823 阅读 · 0 评论 -
对象的串行化(Serialization)
一、串行化的概念和目的 1.什么是串行化 对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要时再将对象恢复。我们把对象的这种能记录自己的状态以便将来再生的能力。叫作对象的持续性(persistence)。对象通过写出描述自己状态的数值来记录自己 ,这个过程叫对象的串行化(Serialization) 。串行化的主要任转载 2012-11-05 17:40:00 · 622 阅读 · 0 评论 -
Java serializable
摘要:本文比较全面的介绍了Java 序列化技术方方面面的知识,从序列化技术的基础谈起,介绍了Java 序列化技术的机制和序列化技术的原理。并在随后的部分详细探讨了序列化的高级主题-如何精确的控制序列化机制。通过阅读该文章,你可以了解如何使用Java 序列化机制的方式和正确使用的方法,避免实际编程中对该技术的误用。并能掌握如何高效使用该技术来完成特殊的功能。关键字:序列化(Ser转载 2012-11-06 09:59:44 · 528 阅读 · 0 评论 -
Java Serializable
java.io.Serializable接口内部没有实现任何东西,这个接口是一个制造者(marker)接口。也就是说,对于要实现它的类来说,该接口不需要实现任何方法。它主要用来通知Java虚拟机(JVM),需要将一个对象序列化。对于这个,有几点我们需要明确:1.并非所有类都可以序列化,在cmd下,我们输入serialver java.net.socket,可以得到socket是否可序列化的转载 2012-11-06 09:44:58 · 466 阅读 · 0 评论 -
java.util.ConcurrentModificationException
http://www.blogjava.net/EvanLiu/archive/2008/08/31/224453.htmljava.util.ConcurrentModificationException工作中碰到个ConcurrentModificationException。代码如下:List list = ...;for(Iterator iter = li转载 2013-03-15 17:51:26 · 681 阅读 · 0 评论 -
Google Java编程风格指南
http://hawstein.com/posts/google-java-style.html目录前言源文件基础源文件结构格式命名约定编程实践Javadoc后记前言这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格。与其它的编程风格指南一样,这里所讨转载 2014-01-26 09:37:34 · 1129 阅读 · 0 评论 -
Java动态(后期)绑定和overloading 向上转型
动态绑定意味着:目前正在调用的方法正是最适用于要操作对象的那个方法。然而它并不意味着对所有的参数都执行最佳匹配。在Java中,一个方法的参数在编译阶段常被静态地绑定。一个例子:Java代码class Base{ public void foo(Base x){ System.out.println("Base.Ba转载 2014-02-26 09:53:51 · 739 阅读 · 0 评论 -
Java 8:HashMap的性能提升
http://it.deepinmind.com/%E6%80%A7%E8%83%BD/2014/04/24/hashmap-performance-in-java-8.htmlHashMap是一个高效通用的数据结构,它在每一个Java程序中都随处可见。先来介绍些基础知识。你可能也知道,HashMap使用key的hashCode()和equals()方法来将值划分到不同的桶里。转载 2014-04-24 17:19:25 · 1055 阅读 · 0 评论 -
构造器内部的多态方法的行为
对类的初始化实际过程为:1原创 2014-05-11 21:27:27 · 922 阅读 · 0 评论 -
Java 类的加载和初始化
public class Insect { private int i = 9; protected int j; Insect() { System.out.println("i = " + i +", j = " + j); j = 39; } private static int x1 = printInit(原创 2014-05-11 15:40:57 · 1072 阅读 · 2 评论 -
java中instanceof用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。 用法:result = object instanceof class参数:Result:布尔类型。Object:必选项。任意对象表达式。Class:必选项。任意已定义的对象类。说明:转载 2012-08-24 13:07:22 · 576 阅读 · 0 评论 -
Java中super的几种用法并与this的区别
1. 子类的构造函数如果要引用super的话,必须把super放在函数的首位.class Base { Base() { System.out.println("Base"); }} publicclass Checketextends Base { Checket() { super();//调用父类的构造转载 2012-08-24 10:53:55 · 459 阅读 · 0 评论 -
Java中的数据比较(再谈==与equals的区别)(
http://blog.sina.com.cn/s/blog_5a81b7990100wb4f.html Java中的变量与对象有区别吗? 引子:变量与对象变量是Java中最基本的存储单元,为变量赋值可以使用赋值表达式。如: int i = 10; 该表达式的含义是将一个字面量(literal)10赋值给一个类型为int转载 2012-08-17 14:53:04 · 577 阅读 · 0 评论 -
Java 接口 实现 和继承关系
http://blog.csdn.net/lyflower/article/details/4204449 一。抽象类有时候,我们可能想要构造一个很抽象的父类对象,它可能仅仅代表一个分类或抽象概念,它的实例没有任何意义,因此不希望它能被实例化。例如:有一个父类“ 水果(Fruit)”,它有几个子类“苹果(Apple)”、“橘子(Orange)”、“香蕉(Banana)”等。水果在这里仅转载 2012-08-14 16:47:40 · 622 阅读 · 0 评论 -
Java抽象类和接口的区别
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很转载 2012-08-14 17:14:49 · 352 阅读 · 0 评论 -
Java多线程设计模式
java语言已经内置了多线程支持,所有实现Runnable接口的类都可被启动一个新线程,新线程会执行该实例的run()方法,当run()方法执行完毕后,线程就结束了。一旦一个线程执行完毕,这个实例就不能再重新启动,只能重新生成一个新实例,再启动一个新线程。Thread类是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实转载 2012-08-14 17:19:53 · 411 阅读 · 0 评论 -
String StringBuffer StringBuilder区别
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常转载 2012-08-15 10:54:38 · 347 阅读 · 0 评论 -
Java String StringBuffer的区别(性能)
String和StringBuffer的区别,网上资料可以说是数不胜数,但是看到这篇文章,感觉里面做的小例子很有代表性,所以转一下,并自己做了一点总结。 在java中有3个类来负责字符的操作。 1.Character 是进行单个字符操作的,2.String 对一串字符进行操作。不可变类。3.StringBuffer 也是对一串字符进行操作,但是可变类。String:是对转载 2012-08-15 10:37:21 · 485 阅读 · 0 评论 -
string与stringbuffer的区别
string与stringbuffer的区别########################简单说来########################String对象内容是不可改变的,StringBuffer是可以改变的,并且高效。1.StringString a = "123"; a = a + "456";上面两句,虽然a的值最终改变了,但是实际上在编译的时候,第一句a是转载 2012-08-15 10:40:01 · 443 阅读 · 0 评论 -
ArrayList LinkedList区别
ArrayList与LinkList2009-03-18 16:27Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Map ├Hashtable ├HashMap └WeakHashMapArrayList其实是包装了一个数组转载 2012-08-15 11:36:23 · 656 阅读 · 0 评论 -
Vector Arraylist LinkedList 区别
http://blog.sina.com.cn/s/blog_4b30131601000ba0.html SDK提供了有序集合接口java.util.List的几种实现,其中三种最为人们熟知的是Vector、ArrayList和LinkedList。有关这些List类的性能差别是一个经常被问及的问题。在这篇文章中,我要探讨的就是LinkedList和Vector/ArrayList之间的性能差转载 2012-08-15 11:34:10 · 582 阅读 · 0 评论 -
Java 初始化顺序
初始化(initialization)其实包含两部分:1.类的初始化(initialization class & interface)2.对象的创建(creation of new class instances)。因为类的初始化其实是类加载(loading of classes)的最后一步,所以很多书中把它归结为“对象的创建”的第一步。其实只是看问题的角度不同而已。为了更清楚的理解转载 2012-08-15 14:04:58 · 472 阅读 · 0 评论 -
String 创建对象问题
[java] view plaincopyprint?String str=new String("aaa"); String str=new String("aaa");这行代码究竟创建了几个String对象呢?答案是2个,而不是3个。由于new String("aaa")相当于"aaa"与一个就是创建出来的放在堆时原实例对象,而另一个就是放在常量池中的 "aaa"转载 2012-08-15 16:09:39 · 506 阅读 · 0 评论 -
JAVA String对象的经典问题(new String())
http://sarin.iteye.com/blog/603684/ 先来看一个例子,代码如下: Java代码 public class Test { public static void main(String[] args) { String str = "abc"; String str转载 2012-08-17 14:00:39 · 540 阅读 · 0 评论 -
JAVA String 对象
http://blog.csdn.net/jcc3120/article/details/2118870 起因:String a="Hello World!";String b="Hello World!";a==b? a和b是否相等 ? 为什么?String a=new String("Hello World!");String b="Hello Wor转载 2012-08-17 13:57:12 · 503 阅读 · 0 评论 -
JAVA 类加载器详解
首先来了解一下字节码和class文件的区别:我们知道,新建一个Java对象的时候,JVM要将这个对象对应的字节码加载到内存中,这个字节码的原始信息存放在classpath(就是我们新建Java工程的bin目录下)指定的目录下的.class文件,类加载需要将.class文件导入到硬盘中,经过一些处理之后变成字节码在加载到内存中。下面来看一下简单的例子:[java] vie转载 2016-07-08 14:09:41 · 1553 阅读 · 0 评论