当前位置: 首页 > wzjs >正文

纪念币商城网站建设不属于网络推广方法

纪念币商城网站建设,不属于网络推广方法,wap网站模式,Wordpress加入php源码匿名内部类 首先我们先来介绍一下什么是匿名内部类 匿名内部类:java中一种特殊的类定义方式,它允许你在需要实现一个接口或继承一个类的地方直接定义一个该接口或类的匿名子类。若想创建一个派生类的对象,并且对象只创建一次,可…

匿名内部类

首先我们先来介绍一下什么是匿名内部类

匿名内部类:java中一种特殊的类定义方式,它允许你在需要实现一个接口或继承一个类的地方直接定义一个该接口或类的匿名子类。若想创建一个派生类的对象,并且对象只创建一次,可以设计为匿名内部类,可以大 大简化代码

注意:匿名内部类中不能修改外面局部变量的值

问:内部类有独立的.class吗?

答:有

让我们一起看看代码实例 

package ooday04;public class AnonInnerClassDemo {public static void main(String[] args) {//1)创建了Inter的一个派生类,但是没有名字//2)为该派生类创建了一个对象,名为o1,向上造型为Inter类型//  ----new Inter(){};是在创建Inter的派生类的对象//3)大括号中的为派生类的类体Inter o1 = new Inter(){};//1)创建了Inter的一个派生类,但是没有名字//2)为该派生类创建了一个对象,名为o2,向上造型为Inter类型//3)大括号中的为派生类的类体Inter o2 = new Inter(){};int num = 5;num = 6;//1)创建了InterInter的一个派生类,但是没有名字//2)为该派生类创建了一个对象,名为o3,向上造型为InterInter类型//3)大括号中的为派生类的类体InterInter o3 = new InterInter(){public void show(){System.out.println("showshow");//num = 55; //编译错误,匿名内部类中不能修改外面局部变量的值//因为该变量在此处会默认为final的}};o3.show();}}interface InterInter{void show();}interface Inter{}

 让我们再一起看看具体的实践

        List<String> list1 = new ArrayList<>();list1.add("你好啊");list1.add("哇你好( •̀ ω •́ )");list1.add("你好");Collections.sort(list1, new Comparator<String>() {@Overridepublic int compare(String o1, String o2) {return o1.length() - o2.length();}});System.out.println(list1);

那么是不是感觉还是就算简化了类的创建还是很麻烦,不够清晰明了,这就可以介绍今天的主角了Lambda表达式了

Lambda表达式 

Lambda表达式是Java 8及更高版本中引入的一个特性,它提供了一种简洁的方式来表示匿名方法。Lambda表达式允许你以更直观、更简洁的方式编写代码,特别是在处理集合、事件监听或任何需要传递函数作为参数的场景中。

语法规则

Lambda表达式的基本语法由三部分组成:参数列表、箭头(->)和Lambda体(即方法体)。

(参数列表)->{
 方法体
 }

代码实例 

在了解基本语法后我们来看看具体的实现 接下来是匿名内部类写法和lambda表达式写法的对比

        //自定义比较器的匿名内部类写法Comparator<String> c1 = new Comparator<String>() {@Overridepublic int compare(String o1, String o2) {return o2.length() - o1.length();}};
        //使用lambda表达式//lambda表达式就是省去了匿名内部类创建是接口与方法名部分Comparator<String> c2 = (String o1, String o2) -> {return o2.length() - o1.length();};

是不是简洁了许多,但是别急还能更加的简洁

        //lambda表达式可以忽略参数的类型//如果方法中只有一句代码时,该方法体的“{}”可以忽略不写//如果这句代码含有return关键字时,也要一起忽略returnComparator<String> c3 = (String o1, String o2) -> o2.length() - o1.length();

 接下来再介绍一个基于lambda表达式遍历集合元素

forEach 

JDK8之后,java在集合Collection接口中添加了一个用于遍历集合元素的forEach

        Collection<String> c = new ArrayList<>();c.add("one");c.add("two");c.add("three");c.add("four");for (String e : c) {System.out.println(e);}//tips:当lambda中只有一个参数时,参数列表的"()"可以忽略不写c.forEach(e->System.out.println(e));/*JDK8中出现的lambda表达式的变种写法:方法引用对象::方法当lambda表达式的参数与方法体中调用方法的参数一致时例如:(e)->System.out.println(e);那么就可以写作:System.out::println;对象::方法现在以了解为主即可*/c.forEach(System.out::println);
 

 

 

 

 

 

 

http://www.dtcms.com/wzjs/315547.html

相关文章:

  • 企业微信营销系统辽宁seo推广
  • 宝鸡网站建设价格推广专员是做什么的
  • 网站上职业学校排名 该怎么做快速排名优化
  • 新网互联魔方手机网站建站系统自媒体账号申请
  • 昆山做网站的kamese站长之家域名查询
  • redhat7部署wordpress关键词搜索引擎优化推广
  • 网站建设开票税点郑州百度推广哪家好
  • 如何判断网站被google k西安seo整站优化
  • 深圳seo优化项目优化培训课程
  • 北京商场营业时间做优化关键词
  • 小网站发布要怎么做个人介绍网页制作
  • 网站如何做性能测试百度高级搜索引擎
  • 西安做网站哪里便宜商丘网络推广哪家好
  • 长春网站制作长春万网百度推广排名代发
  • 免费ppt模板的网站seo公司是什么意思
  • 在线商城开发费用搜索引擎优化员简历
  • 怎么做淘宝网站推广关键词搜索量全网查询
  • 宝安商城网站建设哪家便宜黄冈网站seo
  • 北京房山网站建设产品更新培训重庆seo小z博客
  • 盗版小说网站怎么做seo网络营销技术
  • 网站域名空间到期自己怎么续费国家再就业免费培训网
  • 创建一个公司网站需要多少钱免费二级域名注册网站
  • 英文网站开发公司哪家好最新热搜榜
  • 网站导航页面设计怎么在腾讯地图上添加自己的店铺
  • 上海 企业网站制武汉网络推广seo
  • 南宁网站建设教学太原竞价托管公司推荐
  • 网站建设维护实训总结深圳网络营销推广公司
  • 榆林电商网站建设如何推广app让别人注册
  • 高端自适应网站开发怎样做网站卖自己的产品
  • 网站的建设背景简述网站建设流程