随笔分类 -  Java基础

摘要:1、用static修饰的是内部类,此时这个 内部类变为静态内部类;对测试有用; 2、内部静态类不需要有指向外部类的引用; 3、静态类只能访问外部类的静态成员,不能访问外部类的非静态成员; 1、非静态内部类需要持有对外部类的引用; 2、非静态内部类能够访问外部类的静态和非静态成员; 3、一个非静态内部 阅读全文
posted @ 2016-06-22 21:46 fankongkong 阅读(5041) 评论(0) 推荐(0)
摘要:1、Java中一个类可以实现多个接口; 2、表示的是“lika a” 关系,有没有关系; 3、接口中的方法为public static abstract, 不能有实现即方法体,只能声明; 4、接口是对行为抽象; 5、接口中的成员变量为public static final; 1、Java中一个类只能 阅读全文
posted @ 2016-06-22 20:42 fankongkong 阅读(168) 评论(0) 推荐(0)
摘要:1、方法重写、覆盖; 2、重写是父类与子类之间多态性的一种表现; 3、方法名,参数,返回值相同; 4、存在于子类和父类之间; 5、修饰为final的方法,不能被重写; 1、方法重载; 2、重载是一个类中多态性的一种表现; 3、参数类型、个数和顺序至少有一个不同; 4、不能重载只有返回值不同的方法名; 阅读全文
posted @ 2016-06-16 11:24 fankongkong 阅读(843) 评论(0) 推荐(0)
摘要:1、英文为 encapsulation,实现信息隐藏; 2、把同一类事物的特性归纳到一个类中(属性和行为),隐藏对象的内部实现; 1、英文为 inheritance; 2、继承的过程,是从一般到特殊的过程,可以通过继承和组合实现,可以用抽象类和接口; 1、英文为 polymorphism,表现为多种 阅读全文
posted @ 2016-06-16 11:15 fankongkong 阅读(429) 评论(0) 推荐(0)
摘要:1、全称为OutOfMemoryError异常,如果虚拟机在扩展栈时无法申请足够的内存空间,抛出它; 2、Java heap异常:java.lang.OutOfMemoryError:Java heap Space; 3、虚拟机栈和本地方法溢出; 4、运行时常量池溢出异常信息:java.lang.O 阅读全文
posted @ 2016-06-16 10:50 fankongkong 阅读(1812) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2016-06-16 10:37 fankongkong 阅读(395) 评论(0) 推荐(0)
摘要:1、Collection是集合类的顶级接口; 2、实现接口和类主要有Set、List、LinkedList、ArrayList、Vector、Stack、Set; 1、是针对集合类的一个帮助类,提供操作集合的工具方法; 2、一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作; 3、服务于Ja 阅读全文
posted @ 2016-06-15 10:21 fankongkong 阅读(2167) 评论(0) 推荐(0)
摘要:1、是对HashMap的线程安全实现; 2、不同于HashTable,不是对整个HashMap中的方法使用Synchronized来保证同步; 3、通过对Map分段,在插入时只使用重用锁锁定特定的段; 4、根据Map段的数量则可以达到不同的并发数量; 5、能根据并发线程来定制段的数量; 阅读全文
posted @ 2016-06-15 10:13 fankongkong 阅读(140) 评论(0) 推荐(0)
摘要:1、线程不安全; 2、允许null value 和 null key; 3、访问效率比较高; 4、Java1.2引进的Map接口的一个实现; 5、轻量级; 6、根据键的HashCode()值存储数据的位置; 7、遍历时,取得的数据的顺序是完全随机的; 8、最多允许一条记录的键为空; 9、允许多条记录 阅读全文
posted @ 2016-06-15 09:52 fankongkong 阅读(408) 评论(0) 推荐(2)
摘要:1、键值对的对象,一个映射不能包括重复的键; 2、某些映射实现可以确保顺序,如TreeMap类; 3、另一些映射不能保证顺序,如HashMap类; 4、KeySet()抽取key序列; 5、Map中的所有Keys生成一个集合,不重复; 6、Values()抽取value序列; 7、Map中的所有Va 阅读全文
posted @ 2016-06-15 09:45 fankongkong 阅读(990) 评论(0) 推荐(1)
摘要:1、String对象是不可变的字符串(每次对String类型进行改变时,都会产生一个新的String对象); 2、String对象的intern()方法的运用; 1、来自JDK1.0,可变字符串; 2、线程安全; 3、开销大,性能低下; 4、可以用toString()方法转换为字符串; 1、来自JD 阅读全文
posted @ 2016-05-31 16:04 fankongkong 阅读(149) 评论(0) 推荐(0)
摘要:1、ArrayList类的继承关系 2、LinkedList类的继承关系 3、Vector的继承关系 4、三者比较 1、底层是数组实现,本质上是一个数组,增加删除慢,查询快; 2、线程不安全,不同步; 3、实现可变大小的数组,允许null元素; 4、默认初始容量较小,预计分配量的话,分配一个较大的容 阅读全文
posted @ 2016-05-30 11:21 fankongkong 阅读(252) 评论(0) 推荐(0)
摘要:1、强引用—用new 当我们用new向堆区申请一片内存空间时,此时就是强引用。 当内存不足,GC(垃圾收集器)不会回收该强引用的对象。 2、软引用—用SofeReference类实现 用来描述一些还有用但并非必需的对象。 对于该类对象,当系统将发生内存溢出前,JVM将会把这类对象列入回收范围中进行第 阅读全文
posted @ 2016-05-27 11:19 fankongkong 阅读(629) 评论(1) 推荐(0)
摘要:如图所示,Object一共有10种方法: 下面详细描述: 1、public Object() 方法,默认构造函数方法,当新建一个Object对象的时候,调用这个方法向堆区申请一片内存; 2、private static native void registerNatives();方法,该方法是用na 阅读全文
posted @ 2016-05-25 15:21 fankongkong 阅读(454) 评论(0) 推荐(0)
摘要:1、 == 比较的是栈区的值,比较的是原始数据类型的值或者复合数据类型的地址。 2、 equals方法比较的对象是复合数据类型,如果没有override equals 方法,那么比较的是两个对象的内存地址,如果重写了override 方法,那么使用新的逻辑。 3、 == 是一个运算符,而equals 阅读全文
posted @ 2016-05-25 15:15 fankongkong 阅读(165) 评论(0) 推荐(0)
摘要:由于java程序是运行在虚拟机之上的,所以java的基本数据类型的大小是确定的,不会随着操作系统的位数的改变而改变。 在计算机中,存储的是0,1,0,1这样的二进制位,表示为bit,1Byte = 8bit 1BB = 210YB = 220ZB = 230EB = 240PB = 250TB = 阅读全文
posted @ 2016-05-25 15:04 fankongkong 阅读(529) 评论(0) 推荐(0)