10-19唐兆文
并行:指两个或者多个事件在同一时刻发生(同时执行);
并发:指两个或者多个事件在同一个时间段内发生(交替执行);
进程与线程的区别:
进程:有独立的内存空间,进程中的数据存放空间(对空间和栈空间)是独立的,至少有一个线程。
线程:堆空间共享,栈空间独立,线程消耗的资源比进程小的多。
每个程序至少拥有一个线程,称为主线程。当程序加载到内存时启动主线程。java程序中main方法时主线程接口。
创建一个行新的执行线程有两种方法:一个是将一个类声明为Thread的子类。这个子类应该重写Thread类的方法run(),然后可以分配并启动子类的实例。如果定义的类已经继承了其他类则无法在继承Thread。
任何一个实现了Runnerable接口的对象都可以作为一个线程的目标对象。避免了java中的单继承的局限性。也能容易实现资源共享(一个实例多个线程运行)。
sleep()使当前线程进入阻塞状态,即使没有其他等待运行的线程,当前线程也会等待指定时间,其他等待执行的线程的机会是均等的
yield()当前线程转入暂停执行的状态,如果没有其他等待执行程序的线程,当前线程会马上恢复执行,会运行优先级相同或者更高的线程。
复习
string str="1,2,3,4,5";
int [] arr=str.spilt(",");
int []ar=new int[arr.length];
for(int i=0;i<arr.length;i++){
ar[i]=Integer.parseInt(arr[i])
}
System.out.printf(Arrays.toString(arr));
多态:一个对象具有多种状态。具体表现为父类的引用指向子类的实例。方法的重写是实现多态的基础
父类引用调用方法时,实际上是调用的是子类的方法,不同的子类有不同的方法实现,体现出同一个方法在不同子类中的不同形态的表现。
父类类只能调用子类从父类继承的方法或重写的方法。
父类不能调用子类新增 的方法。
把子类转换为父类称为向上转型,系统自动进行类型转换。把父类转换为子类,称为向下转型,必须进行强制转换。
Dog dog=(Dog)pet;
instanceof运算符用于判断一个对像是否属于一个类。
java只支持单继承,即一个类只能有一个直接父类。object类是所有类的祖先。
心得
今天白天的学习了线程,线程中的锁还是不明白是啥。
晚上复习了多态对多态有了更深刻的认识
近期评论