码迷,mamicode.com
首页 > 其他好文 > 详细

一课掌握Lambda表达式语法及作用简单入门1??

时间:2019-12-23 00:58:42      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:内部类   系统   创建   作用   图片   java   一个   线程   静态   

通过三个方面讲解Lambda表达式

1  什么是Lambda表达式

2  Lambda表达式基础知识

3  Lambda表达式高级扩展

技术图片

 

 分为三个层次去介绍一下Lambda表达式

重构结束后,我们针对性能问题进行讲解,

1 什么是Lambda表达式

2 Model Code As Data

3 功能接口设计及优化

4 为什么要使用Lambda表达式

Lambda表达式,也可以成为箭头函数,匿名函数,闭包

Lambda表达式体现的是轻量级函数方式编程思想

JDK8新特性

-> 左边操作参数,右侧是操作表达式

Model Code as Data 编码及数据,

尽可能轻量级的将代码封装为数据

解决方案: 接口&实现类 (匿名内部类)

存在问题: 语法冗余,this关键字,变量捕获,数据控制

项目问题: 功能问题的设计及其优化

 需求环境: 线程类的创建

 传统的匿名内部类实现

 quickstart构建maven项目

 创建好项目包后开始开发

技术图片

 

传统模式下,本身只要创建线程就可以了

这时候传统模式有代码的冗余的。

这时候我们用jdk8新特性处理一下。

 new Thread(()->{

      System.out.println();

}).start

【不需要匿名内部类了】

jdk8才能够支持的。

我们等待项目重构完成。

技术图片

 

 输出会提示 Lambda

 解决方案; Lambda表达式实现是为了优化

它不是解决为止问题的新技术

是为现有问题的语义化优化

需要根据需求考虑性能问题

3-1 函数式接口概述和定义

 函数式接口概念

 Lambda语法以及使用

 Lambda表达式运行原理

 函数式接口,就是Java类型系统中的接口

 函数式接口,是只包含一个接口方法的特殊接口

语义化检测注解:@FunctionalInterface

@FunctionalInterface

public interface IUserCredential{

      /**

        *通过用户账号,验证用户身份信息的接口

        */  

       String verifyUser(String username);

}

 

消息传输格式化转换接口

@FunctionalInterface

public interface IMessageFormar{

       String format(String message,String format);

}

这先定义好接口,下一步讲解使用规则。

技术图片

 

 

public class UserCredentialImpl implements IUserCredential{

      @Override

       public String verifyUser(String username){

            分情况讨论一下

      }

}

对分类情况讨论进行测试。

default【不再规定的其中】 String getCredential(String username){

        分类讨论一下

}

default对所有子类增加的所有方法

与通过static修饰的方法不同。

static String isSuccess(String message){
       if(message!=null){

          return "true";

       }else{

         return "false";

       }

}

静态方法的方式,简单的场景模拟。

静态方法定义,也不会影响函数式接口。

技术图片

 

 如果我们使用了

String toString();是可以通过的。

一课掌握Lambda表达式语法及作用简单入门1??

标签:内部类   系统   创建   作用   图片   java   一个   线程   静态   

原文地址:https://www.cnblogs.com/EarlyBridVic/p/12081596.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!