`
NEO_ONE
  • 浏览: 49707 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

static 关键字

    博客分类:
  • Java
阅读更多

Java之static关键字

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块。
  1、static成员
  被static修饰的成员变量和成员方法独立于该类的任何对象。
  按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量 ;另一种是没有被static修饰的变量,叫实例变量 。两者的区别是:
  对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这是不推荐的)。
  对于实例变量,每创建一个实例,就会为实例变量分配一次内存,实例变量可以在内存中有多个拷贝,互不影响(灵活)。

  2、静态方法 (静态成员的访问)
  静态成员是属于类的, 调用一个静态方法就是“类名.方法名”,调用一个静态成员就是“类名.变量名”,
  静态方法可以直接通过类名调用,任何的实例也都可以调用,因此静态方法中不能用this和super关键字 ,不能直接访问所属类的实例变量和 实例方法(就是不带static的成员变量和成员成员方法),只能访问所属类的静态成员变量和成员方法。因为实例成员与特定的对象关联!这个需要去理解, 想明白其中的道理,不是记忆!!!
  因为static方法独立于任何实例,因此static方法必须被实现,而不能是抽象的abstract。
  3、static代码块
  static代码块也叫静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM 加载类时会执行这些静态的代码块,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次 。例如:

public class Sample{ 
         private static int a = 100; 
         private int b; 
        static{ 
         b = 100;       //静态块一般做初始化工作  init();
                } 
    public static void main(String[]args){ 
                    System.out.println("两个常量的值分别为:"+a+""+b);
                                                           } 
                              } 
 
  4、static和final一块用表示什么
  static final用来修饰成员变量和成员方法,可简单理解为“全局常量”static final CITY_STREET ="city_street";
  对于变量,表示一旦给值就不可修改,并且通过类名可以访问。
  对于方法,表示不可覆盖,并且可以通过类名直接访问。
分享到:
评论

相关推荐

    18.static关键字.zip

    18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static关键字.zip18.static...

    C++中static关键字总结

    C++中的static关键字是一个非常重要的概念,它在不同的上下文中有不同的含义和用途。在C++中,使用static关键字可以修饰变量和函数,具有不同的作用。下面对这些知识点进行详细解释。 首先,静态变量(static ...

    static关键字详解

    static关键字详解: 内容摘要: 一、static关键字定义属性 二、static属性与非static属性还有一个最大的区别,所有的非static属性必须产生实例化对象之后才可以访问,但是static属性不受实例化对象的控制,也就是 说...

    关于static关键字的总结

    "关于static关键字的总结" static 关键字是 Java 语言中一个非常重要的概念,它可以用来修饰变量、方法、内部类和代码块等。下面我们将详细介绍 static 关键字的由来、作用和用法。 一、static 关键字的由来 在 ...

    Java面向对象程序设计static关键字.pptx

    Java面向对象程序设计static关键字 Java面向对象程序设计中,static关键字是一个非常重要的概念,它有很多特点和作用,本文将对static关键字的特点、作用和使用场景进行详细的解释。 static关键字的特点 首先,...

    static 关键字详解

    ### static关键字详解 在Java编程语言中,`static`关键字是一个非常重要的概念,它用于定义类成员(变量、方法和内部类)的行为属性。当一个类成员被声明为`static`时,它就成为了该类的静态成员,这意味着无论创建...

    C++ static关键字详细应用指南

    在C++编程语言中,static关键字是一个非常重要的概念,它在全局变量、局部变量以及函数的声明中都有着不同的用途和含义。以下是对C++ static关键字的详细应用指南的解读。 首先,让我们来了解什么是静态全局变量。...

    Static关键字详解.docx

    Static关键字在Java编程语言中扮演着至关重要的角色,它允许我们创建类级别的变量和方法,这些变量和方法不依赖于类的实例即可访问。在深入理解Static关键字之前,我们需要了解类和对象的概念。类是创建对象的蓝图,...

    C++中的static关键字.doc

    C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。

    static关键字简介

    在课堂中 已经简要介绍了 static 关键字的使用 我们知道 static 关键字可以用来修饰 类的成员变量 成员方法或者是代码块 下面我们就来说说这个 static 关键字 有时候程序员可能需要定义一个类成员 对它的使用不依赖...

    static关键字的特点

    static关键字的特点

    Java 程序显示类中 Static 关键字的用法.docx

    "Java 程序显示类中 Static 关键字的用法" Java 中的 static 关键字是 Java 语言中一个非常重要的概念,它主要用于内存管理。静态关键字用于共享给定类的相同变量或方法。用户可以将静态关键字应用于变量、方法、块...

    static关键字思维导图.xmind

    static关键字

    Java面向对象(高级)- static关键字的使用

    2. **static关键字的说明**: `static`可以修饰属性、方法、代码块和内部类,但不能修饰构造器。被`static`修饰的成员在类加载时就会被创建,它们的生命周期比任何对象都要长。静态成员可以直接通过类名访问,无需...

    static关键字的所有用法

    实践最重要,所以我的是理论加实例绝对好理解。。

    Java零基础-static关键字.md

    ### Java零基础-static关键字 #### 一、static关键字概述 在Java编程语言中,`static`关键字具有重要的地位。它被广泛应用于多个方面,包括静态成员变量、静态方法、静态代码块以及静态内部类等。正确理解和应用`...

    static关键字.notes

    static关键字.notes

    MLDN魔乐static关键字

    MLDN魔乐static关键字 corejava java新手,菜鸟学习

Global site tag (gtag.js) - Google Analytics