摘要: 事件模型指的是对象之间进行通信的设计模式。 对象1给对象2发送一个信息相当于对象1引用对象2的方法。 模型即是一种设计模式(约定俗成) 对象对为三种: ①事件源:发出事件者; ②事件对象:发出的事件本身; ① 事件监听器:提供处理事件指定的方法。 Java AWT事件模型也称为授权事件模型,指事件可 阅读全文
posted @ 2018-08-04 22:20 borter 阅读(169) 评论(0) 推荐(0) 编辑
摘要: Awt:抽象窗口工具箱,它由三部分组成: ①组件:界面元素; ②容器:装载组件的容器(例如窗体); ③布局管理器:负责决定容器中组件的摆放位置。 图形界面的应用分四步: ① 选择一个容器: ⑴window:带标题的容器(如Frame); ⑵Panel:面板 通过add()想容器中添加组件。 Java 阅读全文
posted @ 2018-08-04 22:19 borter 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 软件应用的三个发展阶段: 单机应用 网络应用(C/S结构) BS结构:B表示浏览器,S表示server端。即利用浏览器作为客户端,因此对于图形界面的要求已经不高,现在的发展趋势是不使用安装,即不用任何的本地应用,图形很快就会被服务器构件开发所取代。 阅读全文
posted @ 2018-08-04 22:17 borter 阅读(447) 评论(0) 推荐(0) 编辑
摘要: 注:HashMap底层也是用数组,HashSet底层实际上也是HashMap,HashSet类中有HashMap属性(我们如何在API中查属性)。HashSet实际上为(key.null)类型的HashMap。有key值而没有value值。 正因为以上的原因,TreeSet和TreeMap的实现也有 阅读全文
posted @ 2018-08-04 22:16 borter 阅读(884) 评论(0) 推荐(0) 编辑
摘要: 遍历Map,使用keySet()可以返回set值,用keySet()得到key值,使用迭代器遍历,然后使用put()得到value值。 上面这个算法的关键语句: Set s=m.keySet(); Interator it=new interator(); Object key=it.next(); 阅读全文
posted @ 2018-08-04 22:14 borter 阅读(522) 评论(0) 推荐(0) 编辑
摘要: SortedSet可自动为元素排序。 SortedSet的实现类是TreeSet:它的作用是字为添加到TreeSet中的元素排序。 与HashSet不同,TreeSet并不需要实现HashCode()和equals()。 只要实现compareable和compareTo()接可以实现过滤功能。 ( 阅读全文
posted @ 2018-08-04 22:13 borter 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 如果偷懒,没有设定equals(),就会造成返回hashCode虽然结果相同,但在程序执行的过程中会多次地调用equals(),从而影响程序执行的效率。 我们要保证相同对象的返回的hashCode一定相同,也要保证不相同的对象的hashCode尽可能不同(因为数组的边界性,hashCode还是可能相 阅读全文
posted @ 2018-08-04 22:11 borter 阅读(3481) 评论(0) 推荐(0) 编辑
摘要: Set-HashSet实现类: 遍历一个Set的方法只有一个:迭代器(interator)。 HashSet中元素是无序的(这个无序指的是数据的添加顺序和后来的排列顺序不同),而且元素不可重复。 在Object中除了有final(),toString(),equals(),还有hashCode()。 阅读全文
posted @ 2018-08-04 22:08 borter 阅读(238) 评论(0) 推荐(0) 编辑
摘要: List接口的实现类(Vector)(与ArrayList相似,区别是Vector是重量级的组件,使用使消耗的资源比较多。) 结论:在考虑并发的情况下用Vector(保证线程的安全)。 在不考虑并发的情况下用ArrayList(不能保证线程的安全)。 面试经验(知识点): java.util.sta 阅读全文
posted @ 2018-08-04 22:06 borter 阅读(130) 评论(0) 推荐(0) 编辑
摘要: LinkedList提供以下方法:(ArrayList无此类方法) addFirst(); removeFirst(); addLast(); removeLast(); 在堆栈中,push为入栈操作,pop为出栈操作。 Push用addFirst();pop用removeFirst(),实现后进先 阅读全文
posted @ 2018-08-04 22:04 borter 阅读(4954) 评论(0) 推荐(0) 编辑
摘要: LinkedList接口(在代码的使用过程中和ArrayList没有什么区别) ArrayList底层是object数组,所以ArrayList具有数组的查询速度快的优点以及增删速度慢的缺点。 而在LinkedList的底层是一种双向循环链表。在此链表上每一个数据节点都由三部分组成:前指针(指向前面 阅读全文
posted @ 2018-08-04 22:03 borter 阅读(3122) 评论(0) 推荐(2) 编辑
摘要: 集合的最大缺点是无法进行类型判定(这个缺点在JAVA1.5中已经解决),这样就可能出现因为类型不同而出现类型错误。 解决的方法是添加类型的判断。 阅读全文
posted @ 2018-08-04 22:01 borter 阅读(136) 评论(0) 推荐(0) 编辑
摘要: java.util下有一个Comparator(比较器) 它拥有compare(),用来比较两个方法。 要生成比较器,则用Sort中Sort(List,List(Compate)) 第二种方法更灵活,且在运行的时候不用编译。 注意:要想实现comparTo()就必须在主方法中写上implement 阅读全文
posted @ 2018-08-04 22:00 borter 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 对于自定义对象,Sort不知道规则,所以无法比较。这种情况下一定要定义排序规则。方式有两种: java.lang下面有一个接口:Comparable(可比较的) 可以让自定义对象实现一个接口,这个接口只有一个方法comparableTo(Object o) 其规则是当前对象与o对象进行比较,其返回一 阅读全文
posted @ 2018-08-04 21:58 borter 阅读(528) 评论(0) 推荐(0) 编辑
摘要: 通过语句:Iterator it=c.iterator(); 得到一个迭代器,将集合中所有元素顺序排列。然后可以通过interator方法进行遍历,迭代器有一个游标(指针)指向首位置。 Interator有hasNext(),用于判断元素右边是否还有数据,返回True说明有。然后就可以调用next动 阅读全文
posted @ 2018-08-04 21:56 borter 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 以下介绍接口: List接口:(介绍其下的两个实现类:ArrayList和LinkedList) ArrayList和数组非常类似,其底层①也用数组组织数据,ArrayList是动态可变数组。 ① 底层:指存储格式。说明ArrayList对象都是存在于数组中。 注:数组和集合都是从下标0开始。 Ar 阅读全文
posted @ 2018-08-04 21:54 borter 阅读(184) 评论(0) 推荐(0) 编辑
摘要: JAVA中所有与集合有关的实现类都是这六个接口的实现类。 Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构。 List接口代表按照元素一定的相关顺序来组织(在这个序列中顺序是主要的),List接口中数据可重复。 Set接口是数学中集合的概念:其元素无序 阅读全文
posted @ 2018-08-04 21:52 borter 阅读(603) 评论(0) 推荐(0) 编辑
摘要: Key-Value是用一个不可重复的key集合对应可重复的value集合。(典型的例子是字典:通过页码的key值找字的value值)。 例子: key1—value1; key2—value2; key3—value3. SortedMap:如果一个Map可以根据key值排序,则称其为SortedM 阅读全文
posted @ 2018-08-04 21:52 borter 阅读(1247) 评论(0) 推荐(0) 编辑
摘要: 集合 集合是指一个对象容纳了多个对象,这个集合对象主要用来管理维护一系列相似的对象。 数组就是一种对象。 java.util.*定义了一系列的接口和类,告诉我们用什么类NEW出一个对象,可以进行超越数组的操作。 (注:JAVA1.5对JAVA1.4的最大改进就是增加了对范型的支持) 集合框架接口的分 阅读全文
posted @ 2018-08-04 21:50 borter 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 当我们自己定义一个例外类的时候必须使其继承excepiton或者RuntimeException。 Throw是一个语句,用来做抛出例外的功能。 而throws是表示如果下级方法中如果有例外抛出,那么本方法不做处理,继续向上抛出。 Throws后跟的是例外类型。 断言是一种调试工具(assert) 阅读全文
posted @ 2018-08-04 21:48 borter 阅读(610) 评论(0) 推荐(0) 编辑