美文网首页
Stack,Heap,Lambda

Stack,Heap,Lambda

作者: javaMonkey | 来源:发表于2016-11-22 20:21 被阅读0次

////////////////////////2016-11-17///////////////////////////

int study_data(){

Stack:

Stack是存放方法和局部变量的内存空间

每个方法都会分配一块Frame

方法一旦执行完成,Frame会被销毁

对于原始类型,变量的值也保存在Stack里面

对于引用类型,Stack保存的是指向对象的内存地址(引用)

Heap堆是存放Object的

Java是传值的,不是传引用

GC:

垃圾回收器:GC(Gabege Collection)

Heap里面的对象由GC自动回收

GC维护和检测对象引用,引用数为0的对象会被回收

GC并不是实时回收内存的

Lambda:

“Lambda 表达式”(lambda expression)是一个匿名函数

Lambda表达式是一个方法,他可以作为参数在方法间传递

但只能在实现了FunctionalInterface接口的地方

Java 8的一个大亮点是引入Lambda表达式,使用它设计的代码会更加简洁。当开发者在编写Lambda表达式时,也会随之被编译成一个函数式接口。下面这个例子就是使用Lambda语法来代替匿名的内部类,代码不仅简洁,而且还可读。

没有使用Lambda的老方法:

button.addActionListener(new ActionListener(){

    public void actionPerformed(ActionEvent ae){

         System.out.println("Actiondetected");

    }

});

使用Lambda:

button.addActionListener(()->{

    System.out.println("Actiondetected");

});

让我们来看一个更明显的例子。

不采用Lambda的老方法:

Runnable runnable1=new Runnable(){

    @Override

    public void run(){

        System.out.println("RunningwithoutLambda");

    }

};

使用Lambda:

Runnable runnable2=()->{

    System.out.println("RunningfromLambda");

};

Lambda表达式不仅让代码变的简单、而且可读、最重要的是代码量也随之减少很多

}

相关文章

  • Stack,Heap,Lambda

    ////////////////////////2016-11-17///////////////////////...

  • (转)Objective-C 拾遗:从Heap and Stac

    Objective-C 拾遗:从Heap and Stack到Block Stack和Heap heap和stac...

  • stack heap

    stack:栈是用来存储函数内部临时使用的变量(局部变量),以及函数调用时所使用的参数的内存区域。 heap:堆是...

  • 二、JavaScript 中的堆内存和栈内存

    1 栈 stack”和“堆 heap” 简单的来讲,stack上分配的内存系统自动释放,heap上分配的内存,系统...

  • 堆栈

    栈 (stack)和 堆 (heap) stack 为自动分配的内存空间,它由系统自动释放;而heap则是动态分...

  • 关于JS的堆和栈的理解

    一、堆(heap)和栈(stack) 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内存...

  • 理解js里堆和栈的意义

    一、 堆(heap)和栈(stack) 栈(stack)会自动分配内存空间,会自动释放。堆(heap)动态分配的内...

  • 浅析 Rust 所有权

    一、什么是 stack 和 heap stack 和 heap 都用于变量的内存存储。对于大多数的编程人员来讲,都...

  • JS基础篇-基础数据类型

    一、栈(stack)和堆(heap) stack 为自动分配的内存空间,它由系统自动释放;heap 则是动态分配的...

  • 简述js的栈、堆、深拷贝、浅拷贝

    一、栈(stack)和堆(heap) stack为自动分配的内存空间,它由系统自动释放。 heap则是动态分配的内...

网友评论

      本文标题:Stack,Heap,Lambda

      本文链接:https://www.haomeiwen.com/subject/tvkmpttx.html