java 基础
wuwentao2010
这个作者很懒,什么都没留下…
展开
-
protected修饰的含义
今天将近花了三个小时才弄懂protected这个关键字的含义:[code="java"]package July;public class Clone1 { protected String name="clone1";}[/code][code="java"]package clone;import July.Clone1;public class...2010-07-11 22:10:21 · 426 阅读 · 0 评论 -
java中的内存泄漏
java导致内存泄露的原因很明确:长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄露,尽管短生命周期对象已经不再需要,但是因为长生命周期对象持有它的引用而导致不能被回收,这就是java中内存泄露的发生场景。 1.集合类,集合类仅仅有添加元素的方法,而没有相应的删除机制,导致内存被占用。这一点其实也不明确,这个集合类如果仅仅是局部变量,根本不会造成内存泄露,在方法栈退出后就没...原创 2010-07-01 18:42:55 · 85 阅读 · 0 评论 -
HashCode和HashSet
当对象存储到Hash集合里是,应该重写该对象所在类的hashcode方法,如果不用储存到hash集合中则可以不重写hashcode方法。重写的原则是:当x.equals(y)时,它们所对应的hashcode也应该相等,即:x.hashcode()==y.hashcode()为true。一个HashSet的例子:HashSet是一个无序不可以重复储存的集合。那么HashSet是如何判断两个对...2010-06-30 17:43:29 · 131 阅读 · 0 评论 -
关于抽象类,继承,接口经常犯的错误
今天又犯了一个超级低级的错误,这个错误在很久之前犯过一次,那次搞明白了,这次又犯了。花了很长时间才弄明白。在这里记一下,以免以后再犯时容易查到错误:1,子类继承抽象父类:首先要弄清楚抽象类是可以拥有构造方法和静态方法的,并且可以拥有静态变量和静态常量,可以被子类继承。但是抽象类不可以实例化。若父类A拥有一个有参的构造方法,没有无参的构造方法;子类B继承父类A,子类B有一个有参的构造方法,此时会...2010-09-21 10:53:39 · 383 阅读 · 0 评论 -
多线程总结
多线程是指在同一应用程序下有多个顺序流同时执行在java中定义一个新的线程类有两种方式: 1)实现runnable接口 2)继承Thread类并重写其run方法Start方法和run方法的区别: 当要启动线程的时候,调用线程类的start方法即可以启动线程,告诉cpu该线程已经准备好,此时,线程并没有真正的运行,它必须等待cpu的调度,当cpu将时间片分给了该线程,会调度当前线...2010-06-16 15:42:45 · 118 阅读 · 0 评论 -
JVM运行时数据区的内存模型
程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内存的分配。有六个地方都可以保存数据:(1) 寄存器。这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没有直接的控制权,也不可能在自己的程序里找到寄存器存在的任何踪迹。(2) 堆栈。驻留于常规RAM(随机访问存储器)区域,但可通过...2010-06-09 21:15:53 · 88 阅读 · 0 评论 -
有关于this和super的题目
(一)java中的super和this有关的题目例题1:以下代码的输出结果是下列哪个选项?[Sun公司2005年面试题] class Base{Base(){ System.out.println("Base"); }}public class Checket extends Base{ Checket(){ System....2010-06-07 19:54:00 · 546 阅读 · 0 评论 -
java为什么搞单继承,多继承有什么坏处
多继承虽然能使子类同时拥有多个父类的特征,但是其缺点也是很显著的,主要有两方面:(1)如果在一个子类继承的多个父类中拥有相同名字的实例变量,子类在引用该变量时将产生歧义,无法判断应该使用哪个父类的变量。例如: 类ClassA:[code="java"]public class ClassA { protected int varSame = 0;...原创 2010-06-06 11:44:00 · 547 阅读 · 1 评论 -
java值传递内存分析
[code="java"]class BirthDate { private int day; private int month; private int year; public BirthDate(int d, int m, int y) { day = d; month = m; ...2010-07-12 13:09:59 · 130 阅读 · 0 评论 -
JAVA中的字符串反转(转载)
操作字符串,是JAVA中的一项常用的而且也是一种基本的能力。对于反转字符串这一看似简单的操作,里面体现了好多的字符串的应用,下面结合自己的想法与网上的方法,总结反转字符串基本上有以下一些方法。以方法表现的性能从高到底列出:第一种方法:public static String getRevString(String str){ String a = str;...原创 2010-07-06 12:28:06 · 159 阅读 · 0 评论