总结0807

1.一个类可以继承另一个类,继承到它的公有的方法.
如:有一个Student类和一个UNStudent类,且UNStudent

extends Student.Student类中有一个共有的方法: public void

study(),则UNStudent会继承到这个方法.若在UNStudent类中重

写这个study()方法,且有Student uns = new UNStudent();当

调用uns.study()时,执行的是重写的方法,这个就是多态.


2.JAVA中数据类型可以分为两大类,一类是8种基本数据类型,另

一种是自定义的类类型.8中基本的数据类型采用的是值传递,而类

类型用的是引用传递.值传递和直接使用数值没多大区别,而引用

传递使多个对象指向同一块内存空间,通过其中任意一个对象来修

改这个数据,效果都一样.
String类型是类类型,采用的是引用传递.

3.Set是无序的,要取出其中的对象,必须通过Set对象,得到

Iterator来遍历这个Set
如有一个Set的子类sSet,要遍历这个Set,
java.util.Iterator<Student> it = sSet.iterator();
while(it.hasnext()) {
Student st = it.next();
st.function();
}

Set所有已知实现类:
AbstractSet, ConcurrentSkipListSet,CopyOnWriteArraySet,

EnumSet, HashSet, JobStateReasons,LinkedHashSet,TreeSet


List的遍历:
java.util.List<Student> list = ...;
for(int i = 0;i<list.size();i++) {
Student st = list.get(i);
st.function();
}

在“集合框架”中有两种常规的 List 实现:ArrayList 和

LinkedList


Map的遍历:
首先要得到Map中所有key的集合
java.util.Set<String> set = um.keySet();
然后遍历这个key的set,取出对应的value就行了
java.util.Iterator<String> it = set.iterator();
while(it.hasnext()) {
String key = it.next();
Student uf = um.get(key);
uf.function();
}


4.java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent


java.lang.Object
java.util.EventObject
java.awt.AWTEvent
java.awt.event.ComponentEvent
java.awt.event.InputEvent
java.awt.event.MouseEvent

(MouseMotionListener,MouseWheelListener)


5.递归是在一个函数中调用自身,而循环可调用其他函数
在解决一个步骤相似的问题时,可使用递归简化解答过程


6.java.lang.Object
java.io.InputStream
java.io.FileInputStream

java.lang.Object
java.io.OutputStream
java.io.FileOutputStream

文件复制的实现:用FileInputStream来逐个读取源文件,再用

FileOutputStream来写入到目标文件

7.java中多线程的实现有三种方法,一种是继承Thread类,另一

种是实现Runnable接口,还有一种是以匿名内部类的方式创立,即在
一个方法中创建线程,当方法调用时,线程就启动了
由于Java中只能继承一个类,所以当又要实现多线程又要继承一个

类时,可采用实现Runnable接口来实现多线程

线程状态:
1.新建 2.就绪 3.运行 4.阻塞 5.死亡

线程状态
  ●新线程态(New Thread)   产生一个Thread对象就生成一

个新线程。当线程处于"新线程"状态时,仅仅是一个空线程对象,它

还没有分配到系统资源。因此只能启动或终止它。任何其他操作都

会引发异常。   ●可运行态(Runnable)   start()方法产生

运行线程所必须的资源,调度线程执行,并且调用线程的run()方法

。在这时线程处于可运行态。该状态不称为运行态是因为这时的线

程并不总是一直占用处理机。特别是对于只有一个处理机的PC而言

,任何时刻只能有一个处于可运行态的线程占用处理 机。Java通过

调度来实现多线程对处理机的共享。   ●非运行态(Not

Runnable)   当以下事件发生时,线程进入非运行态。   ①

suspend()方法被调用;   ②sleep()方法被调用;   ③线程

使用wait()来等待条件变量;   ④线程处于I/O等待。   ●

死亡态(Dead)   当run()方法返回,或别的线程调用stop()方法

,线程进入死亡态 。通常Applet使用它的stop()方法来终止它产

生的所有线程。


8.static声明的属性为静态属性,调用时可通过类名.属性直接调

用,可以不创建对象,而且在多个类之间只保留一个备份,方便调

用、传值。
类类型的属性用“==”比较的是它们的地址是否相同,与值无关。

而“equals”比较的是它们的值是否相同。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值