Java lambda表达式与泛型怎么应用 您所在的位置:网站首页 golang泛型语法 Java lambda表达式与泛型怎么应用

Java lambda表达式与泛型怎么应用

2023-05-09 04:48| 来源: 网络整理| 查看: 265

Java lambda表达式与泛型怎么应用 发布时间:2023-05-04 10:59:58 来源:亿速云 阅读:70 作者:zzz 栏目:编程语言

这篇文章主要讲解了“Java lambda表达式与泛型怎么应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java lambda表达式与泛型怎么应用”吧!

泛型泛型的语法定义

class 类名 { private 泛型标识1,变量名;常用的泛型标识:T,E,K,V } 里面正常写法

public class GenericDemo {     //定义数组     private K[] arr; }泛型的使用语法

类名 对象名 = new 类名()

jdk1.7之后,后边的可以省略不写

类名 对象名 = new 类名()

泛型总结

类型参数化,让类的定义更加通用

泛型不支持基本类型,因为在编译时,基本类型无法转换成Object

泛型类在创建对象的时候,如果没有指定数据类型,将按照Object类型来操作

同一泛型类在逻辑上可以看成是多个不同的类型,但实际是相同的类型

从泛型类派生子类

子类也是泛型,子类和父类的泛型要一致 (例如:连泛型的类型T要一致,写的内容相同),

如果父类没有指明类型,则父类要按照Object类型处理

public class Child extends Parent { }

子类不是泛型,父类要明确泛型类型,

如果父类没有指明类型,则父类要按照Object类型处理

泛型接口

泛型接口的语法定义:interface 接口名{ 泛型标识 方法名(); … }

实现类也是泛型,实现类和接口的泛型要一致,如果接口没有指明类型,则接口要按照Object类型处理

实现类不是泛型,接口要明确泛型接口的数据类型,如果接口没有指明类型,则接口按照Object类型处理

lambda表达式lambda表达式概念

面向对象的编程中强调,必须通过对象的形式去做事情;函数思想则是尽量忽略对象的复杂写法,“强调做什么,而不是以什么形式去做”

lambda表达式就是函数思想的体现

lambda表达式就是定义函数式的简化写法,而不是函数调用的简化写法

lambda表达式格式

三要素:形式参数,箭头,代码块

形如:(形参)->代码块

形参如果多个参数,参数之间逗号隔开,如果没有参数,留空括号,不用留空格

-> 一定的是英文,固定写法,表示执行

代码块:具体要做的事情

使用前提:使用接口:接口当中有且只有一个抽象方法

代码示例:

package com.lambda; public class Lambda {     public static void main(String[] args) {         //正常写法         Mythread mythread = new Mythread();         Thread t = new Thread(mythread);         t.start();         //匿名内部类         new Thread(new Runnable() {             @Override             public void run() {                 System.out.println("多线程1就绪了");             }         }).start();         //lambda表达式:创建线程         new Thread(()->{             System.out.println("多线程2就绪了");         }).start();     } } class Mythread implements Runnable{     @Override     public void run() {         System.out.println("多线程就绪");     } }

感谢各位的阅读,以上就是“Java lambda表达式与泛型怎么应用”的内容了,经过本文的学习后,相信大家对Java lambda表达式与泛型怎么应用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读: 如何理解JAVA虚拟主机 如何在服务器搭建java环境

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:[email protected]进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java lambda 上一篇新闻:java中怎么自定义切面增强 下一篇新闻:java怎么实现双向链表的增删改 猜你喜欢 YAML简易教程 学完Python可以做什么?主要用途有哪些? 关于CNN的优化 python爬虫系列精品之多线程的简单实例 python configparser LeetCode: 505.left叶子节点 CNN-cr-1 0-优化 Mybatis如何传入多个参数 KNN算法调优 用Python6种方法:给定一个不超过5位的正整数,判断有几位


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有