java 关键字整理

薛定谔的Bug
• 阅读 1452

对java 一些关键字以及内存机制整理

  • static:

    1. static用法: 方法/变量/静态代码块/静态导入

    2. static内存机制:JVM会把类的这个静态方法和静态变量在类加载的过程中读入内存(事实上是方法区),相当于常驻内存

  • final:

    1. final用法:方法/类/变量

    2. final内存机制:

      修饰变量:
          final变量有3个地方可以赋值:直接赋值,构造函数中,或是初始化块中。
       内存:
           常量(final变量)和非final变量的处理方式是不一样的。
           每一个类型在用到一个常量时,都会复制一份到自己的常量池中。
           常量也像类变量(static)一样保存在方法区,只不过他保存在常量池。
           可能是,类变量被所有实例共享,而常量池是每个实例独有的。
      修饰方法:
      保存在方法区,并且可以被函数代码直接替换,而不用等到执行时再决定具体是那个函数。
  • volatile:

  • synchronized:

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
java中static关键字的使用
知识点:java中,static关键字修饰类的变量、方法、代码块、内部类场景:我们在创建类的方法和变量时,如果这个类在创建多个对象时,共用同一个属性或者方法,就可以使用static关键字修饰,因为static修饰的变量,在内存的静态域存在的值,被类的多个实例所共用,实际上我们在编写一个类时,就是在描述对象的属性和行为,并没有产生实质上的对
Wesley13 Wesley13
3年前
java中static的作用详解
java中static关键字表示静态的意思,主要用于以下三点,static成员变量,static成员方法和static块。在类中如果定义了static类型的对象(变量或者方法),在java虚拟机(JVM)加载类时,该对象就会被实例化,在使用的时候就不需要再去实例化,直接调用就可以了。常与private,public搭配使用。下面详细说一下这三部分。1
Wesley13 Wesley13
3年前
java中一些常考知识
一、static的作用 static是修饰符,用于修饰成员变量(静态变量/类变量)。static修饰的成员被所有对象共享。static优先于对象存在。static修饰的成员可以用类名.静态成员来访问。注:1.静态方法只能访问静态成员,非静态方法既能访问静态成员又可以访问非静态成员。2.静态方法中不可
Wesley13 Wesley13
3年前
java 内存管理 堆和栈的理解
在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。一般,JVM的内存分为两部分:Stack和Heap。Heap(堆)是JVM的内存数据区。Heap的管理很复杂,每次分配不定长的内存空间,专门用来保存对象
CuterCorley CuterCorley
4年前
C语言基础习题50例(九)41-45
习题41学习static定义静态变量的用法。实现思路:用static声明和未用static声明变量进行对比,即可得出static的作用。代码如下:cinclude<stdio.hintmain(){voidfunc();inti;for(i0;i<10;i){func();}return
xiguaapp xiguaapp
4年前
jvm
类的加载连接与初始化加载:查找并加载类的二进制数据连接验证:确保被加载的类的正确性准备:为类的静态变量分配内存,并将其初始化为默认值解析:把类中的符号引用转换成为直接引用初始化:为类的静态变量赋予正确的初始值主动使用创建类的实例访问某个类或接口的静态变量,或者对该静态变量赋值调用类的
Stella981 Stella981
3年前
Android 优化二 Java内存分配机制及内存泄漏
Java内存分配机制及内存泄漏目录介绍1.JVM内存管理1.1JVM内存管理图1.2Java采用GC进行内存管理。2.JVM内存分配的几种策略2.1静态的2.2栈式的2.3堆式的2.4堆和栈的区别2.5得出结论
Wesley13 Wesley13
3年前
Java中的OutOfMemoryError的各种情况及解决和JVM内存结构
在JVM中内存一共有3种:Heap(堆内存),NonHeap(非堆内存)\3\和Native(本地内存)。\1\堆内存是运行时分配所有类实例和数组的一块内存区域。非堆内存包含方法区和JVM内部处理或优化所需的内存,存放有类结构(如运行时常量池、字段及方法结构,以及方法和构造函数代码)。本地内存是由操作系统管理的虚拟内存。当一个应用内存不足时
Wesley13 Wesley13
3年前
Java中的static关键字解析
一.static关键字的用途: 在《Java编程思想》P86页有这样一段话: _“static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。”_  这段话虽然只是说明了static方法
Wesley13 Wesley13
3年前
Java高级特性2
\TOC\1\.static关键字1.1类变量、类方法/static关键字类变量不用实例化,直接类名.属性名就可以使用,是类的一部分,被所有这个类的实例化所共享,也可以叫做静态变量如果想让一个类的所有实例共享数据,就用类变量!
Wesley13 Wesley13
3年前
Java中类的加载顺序剖析(常用于面试题)
如果类A和类B中有静态变量,静态语句块,非静态变量,非静态语句块,构造函数,静态方法,非静态方法,同时类A继承类B,请问当实例化A时,类内部的加载顺序是什么?Demo:ClassB:publicclassB{//静态变量staticinti1;//静态语句块static{
薛定谔的Bug
薛定谔的Bug
Lv1
青山一道同云雨,明月何曾是两乡。
文章
3
粉丝
0
获赞
0