函数式编程思想概述 和冗余的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(); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix