上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 50 下一页
摘要: suspend()是将一个运行时状态进入阻塞状态(注意不释放锁标记)。恢复状态的时候用resume()。Stop()指释放全部。 这几个方法上都有Deprecated标志,说明这个方法不推荐使用。 一般来说,主方法main()结束的时候线程结束,可是也可能出现需要中断线程的情况。对于多线程一般每个线 阅读全文
posted @ 2018-08-05 11:42 borter 阅读(1780) 评论(0) 推荐(0) 编辑
摘要: 当用Synchronized修饰某个方法的时候,表示该方法都对当前对象加锁。 给方法加Synchronized和用Synchronized修饰对象的效果是一致的。 一个线程可以拿到多个锁标记,一个对象最多只能将monitor给一个线程。 Synchronized是以牺牲程序运行的效率为代价的,因此应 阅读全文
posted @ 2018-08-05 11:40 borter 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 进程:任务 任务并发执行是一个宏观概念,微观上是串行的。 进程的调度是有OS负责的(有的系统为独占式,有的系统为共享式,根据重要性,进程有优先级)。 由OS将时间分为若干个时间片。 JAVA在语言级支持多线程。 分配时间的仍然是OS。 阅读全文
posted @ 2018-08-05 11:37 borter 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 事件模型指的是对象之间进行通信的设计模式。 对象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) 编辑
摘要: Exception有一个message属性。在使用catch的时候可以调用: Catch(IOException e){System.out.println(e.message())}; Catch(IOException e){e.printStackTrace()}; 上面这条语句回告诉我们出错 阅读全文
posted @ 2018-08-04 17:57 borter 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 一个try可以跟进多个catch语句,用于处理不同情况。当一个try只能匹配一个catch。 我们可以写多个catch语句,但是不能将父类型的exception的位置写在子类型的excepiton之前,因为这样父类型肯定先于子类型被匹配,所有子类型就成为废话。JAVA编译出错。 在try,catch 阅读全文
posted @ 2018-08-04 17:56 borter 阅读(10778) 评论(0) 推荐(1) 编辑
摘要: 例:public void print() throws Exception. 对于方法a,如果它定义了throws Exception。那么当它调用的方法b返回异常对象时,方法a并不处理,而将这个异常对象向上一级返回,如果所有的方法均不进行处理,返回到主方法,程序中止。(要避免所有的方法都返回的使 阅读全文
posted @ 2018-08-04 17:54 borter 阅读(7301) 评论(0) 推荐(0) 编辑
摘要: 应对未检查异常就是养成良好的检查习惯。 已检查异常是不可避免的,对于已检查异常必须实现定义好应对的方法。 已检查异常肯定跨越出了虚拟机的范围。(比如“未找到文件”) 如何处理已检查异常(对于所有的已检查异常都要进行处理): 首先了解异常形成的机制: 当一个方法中有一条语句出现了异常,它就会throw 阅读全文
posted @ 2018-08-04 17:53 borter 阅读(160) 评论(0) 推荐(0) 编辑
摘要: JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable。 Throwable有两个子类:Error和Exception。 一个Error对象表示一个程序错误,指的是底层的、低级的、不可恢复的严重错误。此时程序一定会退出,因为已经失去了运行所必须的物理环境。 对于Error错误我们无法 阅读全文
posted @ 2018-08-04 17:52 borter 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 匿名内部类(必须掌握): 匿名内部类是一种特殊的局部内部类,它是通过匿名类实现接口。 IA被定义为接口。 IA I=new IA(){}; 注:一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类,没有类名,根据多态,我们使用其父类名。 因其为局部内部类,那么局部内部类的所有限制都对 阅读全文
posted @ 2018-08-04 17:51 borter 阅读(815) 评论(0) 推荐(1) 编辑
摘要: 静态内部类:(注意:前三种内部类与变量类似,所以可以对照参考变量) 静态内部类定义在类中,任何方法外,用static定义。 静态内部类只能访问外部类的静态成员。 生成(new)一个静态内部类不需要外部类成员:这是静态内部类和成员内部类的区别。静态内部类的对象可以直接生成: Outer.Inner i 阅读全文
posted @ 2018-08-04 17:50 borter 阅读(427) 评论(0) 推荐(0) 编辑
摘要: 局部内部类:在方法中定义的内部类称为局部内部类。 与局部变量类似,在局部内部类前不加修饰符public和private,其范围为定义它的代码块。 注意:局部内部类不仅可以访问外部类实例变量,还可以访问外部类的局部变量(但此时要求外部类的局部变量必须为final)?? 在类外不可直接生成局部内部类(保 阅读全文
posted @ 2018-08-04 17:48 borter 阅读(463) 评论(0) 推荐(0) 编辑
摘要: 成员内部类不可以有静态属性。 如果在外部类的外部访问内部类,使用out.inner. 建立内部类对象时应注意: 在外部类的内部可以直接使用inner s=new inner();(因为外部类知道inner是哪个类,所以可以生成对象。) 而在外部类的外部,要生成(new)一个内部类对象,需要首先建立一 阅读全文
posted @ 2018-08-04 17:47 borter 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列。 内部类和外部类的实例变量可以共存。 在内部类中访问实例变量:this.属性 在内部类访问外部类的实例变量:外部类名.this.属性。 成员内部类的优点: ⑴内部类作为外部类的成员,可以访问外部类的私有成员或属性。(即使将外部类声明为P 阅读全文
posted @ 2018-08-04 17:45 borter 阅读(445) 评论(0) 推荐(0) 编辑
摘要: 内部类: (注:所有使用内部类的地方都可以不用内部类,使用内部类可以使程序更加的简洁,便于命名规范和划分层次结构)。 内部类是指在一个外部类的内部再定义一个类。 内部类作为外部类的一个成员,并且依附于外部类而存在的。 内部类可为静态,可用PROTECTED和PRIVATE修饰。(而外部类不可以:外部 阅读全文
posted @ 2018-08-04 17:43 borter 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 封装类: JAVA为每一个简单数据类型提供了一个封装类,使每个简单数据类型可以被Object来装载。 除了int和char,其余类型首字母大写即成封装类。 转换字符的方式: int I=10; String s=I+” ”; String s1=String.valueOf(i); Int I=10 阅读全文
posted @ 2018-08-04 17:41 borter 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 以下为定义equal(加上这个定义,返回ture或false) public boolean equals(Object o){ student s=(student)o; if (s.name.equals(this.name)&&s.age==this.age) else return fals 阅读全文
posted @ 2018-08-04 17:40 borter 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 故如果要比较两个字符串是否相同(而不是他们的地址是否相同)。可以对a调用equal: System.out.println(a.equal(b)); equal用来比较两个对象中字符串的顺序。 a.equal(b)是a与b的值的比较。 注意下面程序: student a=new student(“L 阅读全文
posted @ 2018-08-04 17:39 borter 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 字符串类为JAVA中的特殊类,String中为final类,一个字符串的值不可重复。因此在JAVA VM(虚拟机)中有一个字符串池,专门用来存储字符串。如果遇到String a=”hello”时(注意没有NEW,不是创建新串),系统在字符串池中寻找是否有”hello”,此时字符串池中没有”hello 阅读全文
posted @ 2018-08-04 17:37 borter 阅读(145) 评论(0) 推荐(0) 编辑
摘要: JAVA中有一个特殊的类: Object。它是JAVA体系中所有类的父类(直接父类或者间接父类)。 此类中的方法可以使所的类均继承。 以下介绍的三种方法属于Object: (1) finalize方法:当一个对象被垃圾回收的时候调用的方法。 (2) toString():是利用字符串来表示对象。 当 阅读全文
posted @ 2018-08-04 17:36 borter 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 接口往往被我们定义成一类XX的东西。 接口实际上是定义一个规范、标准。 ① 通过接口可以实现不同层次、不同体系对象的共同属性; 通过接口实现write once as anywhere. 以JAVA数据库连接为例子:JDBC制定标准;数据厂商实现标准;用户使用标准。 接口通常用来屏蔽底层的差异。 ② 阅读全文
posted @ 2018-08-04 17:35 borter 阅读(1266) 评论(0) 推荐(0) 编辑
上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 50 下一页