今天跟着做了一个模拟龟兔赛跑的程序

Java学习day27_值类型

只有一条赛道,乌龟和兔子在同一条赛道上比赛,使用了多线程

为了实现兔子睡觉,在run方法内增加了当前奔跑者是否是兔子的判断且当前奔跑步数是否是10的整数倍的判断,如果是就执行sleep方法,让兔子休息10ms

 

实现Callable接口需要返回值类型,重写的方法也与Runnable不同,是call方法,同时需要抛出异常

 

实现步骤:创建目标对象;创建执行服务,ExecutorSevice ser = Executors.newFixedThreadPool(1)//数字是要定义的池子数;提交执行,Future<Boolean> result1 = ser.submit(t1);获取结果,boolean r1 = result1.get();关闭服务,ser.shutdownNow()

 

实现Callable接口的好处:有返回值;可以抛出异常

 

 

静态代理模式:真实对象和代理对象都要实现同一个接口;代理对象要代理真实对象的目标角色

 

静态代理模式优点:代理对象可以做真实对象做不到的事;真实对象可以继续做自己的事

 

 

明天学习Lamda表达式,线程停止和线程休眠