随笔分类 - J2SE
Java 2 Platform Standard Edition.
摘要:import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class MyEclipseGen { private static final String LL = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www
阅读全文
摘要:jvm何时回收一个java对象所占的内存?当java对象失去引用时,JVM垃圾回收机制会清除他们,回收所占内存空间。java有没有内存泄漏?无用的内存没有被回收就是内存泄漏。C++内存泄漏:内存是由程序员显示回收,忘了回收会导致内存泄漏java内存泄漏:不可达对象由jvm回收不会导致内存泄漏,可达的但程序员不使用的对象会导致内存泄漏,其实就是浪费内存,占着空间自己又不用。数组的removeelement[--size]=null删除元素要把引用赋值为null,否则就内存泄漏自定义stack的popelementData[size]=null同样的道理jvm回收java对象内存细节垃圾回收的任务
阅读全文
摘要:Set和Map的关系Set代表无序,不能重复的集合;Map代表Key-Value组成的集合,是一种关联数组。Map的Key要求是不能重复,没有顺序。把Map的所有Key组合起来就是Set。Set keySet();HashMap和HashSet原理HashMap底层是用数组链表存储的,元素是Entry。向HashMap添加时,由key的hashcode决定Entry存储位置,当两个Entry对象的key的hashcode相同时,由key的equals()方法返回值决定采用覆盖行为(返回true),还是在链表头添加新的Entry(返回false)。Collection values(),返回集合
阅读全文
摘要:当变量编译时类型和运行时类型不同时,通过该变量访问它引用对象的实例变量时,实例变量的值由声明时的类型决定;但通过该变量调用它引用对象的方法时,由实际引用对象决定。调用被子类重写的方法:子类构造函数初始化,会隐式调用父类的无参构造函数,当子类重写了父类的方法并在父类的初始化中被调用的时候,因为方法由实际引用对象决定,也就是子类对象,会导致访问不到子类的变量的值。java对象是由构造器创建的吗?构造器只是负责java实例变量执行初始化,执行构造器代码之前,该对象内存已经被分配下来。默认情况:基本类型是0和false,引用类型是null。继承成员变量和成员方法的区别方法的行为总是表现出实际类型的行为
阅读全文
摘要:一个非面向对象编程的编译器产生的函数调用会引起所谓的前期绑定,C只有一种方法调用,那就是前期绑定。若在程序执行前进行绑定(如果有的话由编译器和连接程序实现)叫做前期绑定。后期绑定就是运行时根据对象的类型进行绑定。也叫做动态绑定或运行时绑定。java中除了static方法和final方法(private 方法属于final方法)之外,其他所有的方法都是后期绑定。 多态是一项让程序员“将改变的事物与未变的事物分离开来”的重要技术。 如果某个方法是静态的,它的行为就不具有多态性。 构造器初始化顺序:按声明顺序调用成员的初始化方法。 协变返回类型,它表示在导出类中的被覆盖方法可以返回基类方法的返回类.
阅读全文
摘要:一、编码的基础概念首先,要想解决java中文乱码问题就有必要了解一下什么是字符,字符集,编码的概念。字符:是文字与符号的总称,包括文字、图形符号、数学符号等。字符集:就是一组抽象字符的集合。字符集常常和一种具体的语言文字对应起来,该文字中的所有字符或者大部分常用字符就构成了该文字的字符集,比如英文字符集。繁体汉字字符集、日文汉字字符集等等。计算机要处理各种字符,就需要将字符和二进制内码对应起来,这种对应关系就是字符编码: 制定编码首先要确定字符集,并将字符集内的字符排序,然后和二进制数字对应起来。根据字符集内字符的多少,会确定用几个字节来编码。每种编码都限定了一个明确的字符集合,叫做被编码过的
阅读全文
摘要:1.要优先使用基本类型,而不是装箱基本类型,要当心无意识的自动装箱。2.如果一个栈先是增长,然后再收缩,那么栈中弹出的对象将不会当做垃圾回收,即使使用栈的程序不再引用这些对象。导致内存泄漏,甚至磁盘交换,程序失败。3.包含公有可变域的类并不是线程安全的,即使域是final,并且引用不可变对象。实例域绝不能是公有的。4.公有类不应该直接暴露数据域
阅读全文
摘要:今天开始系统看《Effective Java》,将看书的细节记下备忘,并不是总结。 很早开始就接触到设计模式,特别是最简单的单例模式,Java实现单例模式,我开始的思路是设置一个私有静态类实例化变量,初值设为null,提供一个静态初始化的get方法,if判断变量是否为null选择是否new一个实例。代码如下:public class ClassicSingleton { private static ClassicSingleton instance = null; protected ClassicSingleton() { } public s...
阅读全文
摘要:今天终于初略的看完了《Java编程思想(第4版)》,觉得应该写点什么,在此简单总结写自己看书的体会,以便以后在看的时候借鉴。1)编码风格:“驼峰风格”类名首字母大写,方法、字段、以及对象引用与类风格一样,只是第一个字母采用小写。2)Java的多重继承是通过实现接口3)内部类对外部类对象的引用需要用,外部类的名字后面跟.this 1 public class DotNew {2 public class Inner {}3 public static void mian(String[] args) {4 DotNew dn = new DotNew();5 DotN...
阅读全文
摘要:2012年2月27日主要内容:字符串和文本IO和 关于对象的思考1、字符串和文本IO1)限定的(interned):Java虚拟机为了提高效率并节约内存,对具有相同字符串序列的字符串直接量使用同一个实例,这样的实例称为限定的。2)Character字符类包装类、StringBuilder/StringBuffer类Character类是char的包装类;StringBuilder和StringBuffer比String类更灵活,是动态的,可添加,插入或追加新内容。StringBuffer修改缓冲区的方法是同步,适合于多任务并发访问,而StringBuilder不是,适合于单任务访问。3)文件类
阅读全文

浙公网安备 33010602011771号