函数式编程思想概述 和冗余的Runnable代码
函数式编程思想概述
在数学中,函数就是有输入量、输出量的一套计算方案,也就是"拿什么东西做什么事情"”。相对而言,面向对象过分强调"必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法――强调做什么,而不是以什么形式做。
面向对象的思想:
做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情.
函数式编程思想:
只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果不重视过程
冗余的Runnable代码
冗余就是多余的代码
对于(Runnable的匿名内部类用法,可以分析出几点内容∶
Thread类需要Runnable接口作为参数,其中的抽象run方法是用来指定线程任务内容的核心;·
为了指定run的方法体,不得不需要Runnable接口的实现类
为了省去定义一个RunnableImpl 实现类的麻烦,**不得不**使用匿名内部类;
必须覆盖重写抽象 run方法,所以方法名称、方法参数、方法返回值不得不再写一遍,且不能写错
而实际上,似乎只有方法体才是关键所在。
Runnable接口
public class Demo_Runnable implements Runnable{ @Override public void run() { System.out.println(Thread.currentThread().getName()+"新的线程创建了"); } }
public static void main(String[] args) {
//创建Runnable接口的实现类对象 Demo_Runnable demo_runnable = new Demo_Runnable(); //创建Thread对象,构造方法中传递Runnable接口的实现类 Thread thread = new Thread(demo_runnable); //调用start方法开启线程,执行run方法 thread.start(); //简化代码//不用创建Runnable接口实现类 Runnable r = new Runnable(){ @Override public void run() { System.out.println(Thread.currentThread().getName()+"新的线程创建了"); } }; new Thread(r).start(); //简化代码
//不用创建Runnable接口实现类
new Thread(new Runnable() { @Override public void run() { System.out.println(Thread.currentThread().getName()+"新的线程创建了"); } }).start(); }

浙公网安备 33010602011771号