广告
返回顶部
首页 > 资讯 > 后端开发 > Python >详解Java中static关键字的使用和原理
  • 533
分享到

详解Java中static关键字的使用和原理

Java static关键字Java static 2022-11-13 18:11:17 533人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录概述定义和使用格式类变量静态方法调用格式静态原理图解静态代码块概述 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属

概述

关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属 于某个对象的。也就是说,既然属于类,就可以不靠创建对象来调用了。

定义和使用格式

类变量

当 static 修饰成员变量时,该变量称为类变量。该类的每个对象都共享同一个类变量的值。任何对象都可以更改 该类变量的值,但也可以在不创建该类的对象的情况下对类变量进行操作。 类变量:使用 static关键字修饰的成员变量。 定义格式:

static 数据类型 变量名;

举例:

static int id;

静态方法

当static 修饰成员方法时,该方法称为类方法 。静态方法在声明中有static ,建议使用类名来调用,而不需要 创建类的对象。调用方式非常简单。 类方法:使用 static关键字修饰的成员方法,习惯称为静态方法。 定义格式:

修饰符 static 返回值类型 方法名 (参数列表){ // 执行语句 }

举例:在Student类中定义静态方法

public static void showNum() {
    System.out.println("num:" + numberOfStudent);
}

静态方法调用的注意事项:

  • 静态方法可以直接访问类变量和静态方法。
  • 静态方法不能直接访问普通成员变量或成员方法。反之,成员方法可以直接访问类变量或静态方法。
  • 静态方法中,不能使用this关键字。

小贴士:静态方法只能访问静态成员。

public class MyClass {

    int num; // 成员变量
    static int numStatic; // 静态变量

    // 成员方法
    public void method() {
        System.out.println("这是一个成员方法。");
        // 成员方法可以访问成员变量
        System.out.println(num);
        // 成员方法可以访问静态变量
        System.out.println(numStatic);
    }

    // 静态方法
    public static void methodStatic() {
        System.out.println("这是一个静态方法。");
        // 静态方法可以访问静态变量
        System.out.println(numStatic);
        // 静态不能直接访问非静态
//        System.out.println(num); // 错误写法!

        // 静态方法中不能使用this关键字。
//        System.out.println(this); // 错误写法!
    }

}

调用格式

被static修饰的成员可以并且建议通过类名直接访问。虽然也可以通过对象名访问静态成员,原因即多个对象均属 于一个类,共享使用同一个静态成员,但是不建议,会出现警告信息。 格式:

// 访问类变量 类名.类变量名; // 调用静态方法 类名.静态方法名(参数);

静态原理图解

static 修饰的内容:

  • 是随着类的加载而加载的,且只加载一次。
  • 存储于一块固定的内存区域(静态区),所以,可以直接被类名调用。
  • 它优先于对象存在,所以,可以被所有对象共享。

静态代码块

静态代码块:定义在成员位置,使用static修饰的代码块{ }。 位置:类中方法外。 执行:随着类的加载而执行且执行一次,优先于main方法和构造方法的执行。 格式:

public class ClassName{ static { // 执行语句 } }

作用:给类变量进行初始化赋值。用法演示,代码如下:

public class Game {
    public static int number;
    public static ArrayList<String> list;
    static {
        // 给类变量赋值
        number = 2;
        list = new ArrayList<String>();
        // 添加元素到集合中
        list.add("张三");
        list.add("李四");
    }
}

小贴士: static 关键字,可以修饰变量、方法和代码块。在使用的过程中,其主要目的还是想在不创建对象的情况 下,去调用方法。

到此这篇关于详解Java中static关键字的使用和原理的文章就介绍到这了,更多相关Java static关键字内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 详解Java中static关键字的使用和原理

本文链接: https://www.lsjlt.com/news/169445.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 详解Java中static关键字的使用和原理
    目录概述定义和使用格式类变量静态方法调用格式静态原理图解静态代码块概述 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属 ...
    99+
    2022-11-13
    Java static关键字 Java static
  • 详解Java的static关键字
    文章目录 🎄静态方法🌺静态方法和非静态方法对比🛸静态方法实例🛸非静态方法实例 🌹static关键字⭐static变量⭐static代码块 ...
    99+
    2023-12-22
    java 开发语言 static 静态方法
  • 解析Java中的static关键字
    目录一.static关键字使用场景1.1、静态变量1.2、静态方法1.3、静态代码块1.4、静态内部类1.5、静态导入二.static变量和普通成员变量区别三.类的构造器到底是不是s...
    99+
    2022-11-12
  • C/C++中的static关键字详解
    目录C/C++ 中的 static1. 静态局部变量2. 静态全局变量3. static 修饰函数C++的 static 成员静态成员变量 静态成员函数总结:static是...
    99+
    2022-11-13
  • 浅析对Java关键字final和static的理解
    一、final            根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修...
    99+
    2023-05-31
    java static final
  • Java类中this关键字与static关键字的用法解析
    目录前言1:修饰属性,表示调用类中的成员变量。2:this修饰方法3:this表示当前对象的引用前言 今天给大家总结介绍一下Java类中this关键字和static关键字的用法。 t...
    99+
    2022-11-13
  • java中static关键字如何使用
    java中static关键字如何使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。public class Parent {  ...
    99+
    2023-06-20
  • Java中static关键字的使用方式
    这篇文章主要介绍“Java中static关键字的使用方式”,在日常操作中,相信很多人在Java中static关键字的使用方式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中static关键字的使用方式...
    99+
    2023-06-20
  • 详解C语言中的Static关键字
    一、static关键字的基本含义 首先,static关键字的意思是静态的,用于修饰局部变量,全局变量和函数,修改其数据储存类型 1.局部变量:在任意一个函数内部定义的变量(不加sta...
    99+
    2022-11-13
  • Java关键字详解之final static this super的用法
    目录1. final 关键字:2. static 关键字:3. this 关键字:4. super 关键字:final,static,this,super 关键字总结 正文开始@A...
    99+
    2022-11-12
  • Java中static关键字的介绍和用法
    本篇内容主要讲解“Java中static关键字的介绍和用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中static关键字的介绍和用法”吧!用类名去调用static有两层含义: 可以理...
    99+
    2023-06-02
  • Java中的static关键字怎么用
    本文小编为大家详细介绍“Java中的static关键字怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中的static关键字怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一.static关键字...
    99+
    2023-06-29
  • Java中static和volatile关键字的区别
    1. 作用范围不同 static关键字:用于创建类级别的变量或方法,所有类的实例共享同一个static变量的副本。 volatile关键字:用于确保一个变量在多线程环境中的可见性,使所有线程都能看到最新的变量值。 2....
    99+
    2023-10-29
    关键字 区别 Java
  • Java基础之static关键字的使用讲解
    static关键字 在Java中,static是静态修饰关键字。用于修饰类的成员方法、类的成员变量,另外可以编写static代码块来优化程序性能;被static关键字修饰的方法或者变...
    99+
    2022-11-12
  • 带你了解Java中Static关键字的用法
    目录Java中Static关键字的一些用法详解1. Static 修饰类属性,因为静态成员变量可以通过类名+属性名调用,非静态成员变量不能通过类名+属性名调用;2. Static 修...
    99+
    2022-11-12
  • Java中的static关键字你了解多少
    目录一.static关键字的用途1)static方法2)static变量3)static代码块二.static关键字的误区1.static关键字会改变类中成员的访问权限吗?2.能通过...
    99+
    2022-11-13
  • 如何实现Java中的static关键字解析
    这期内容当中小编将会给大家带来有关如何实现Java中的static关键字解析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,...
    99+
    2023-06-03
  • Java中this和super关键字的使用详解
    目录父类空间优先于子类对象产生super和this的含义super和this的用法继承的特点父类空间优先于子类对象产生 在每次创建子类对象时,先初始化父类空间,再创建其子类对象本身。...
    99+
    2022-11-13
    Java this super关键字 Java this关键字 Java super关键字
  • Java中Static关键字使用的方法有哪些
    本文小编为大家详细介绍“Java中Static关键字使用的方法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java中Static关键字使用的方法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。&nb...
    99+
    2023-07-05
  • java中static关键字的作用是什么
    在Java中,static关键字有以下几种作用:1. 静态变量:使用static关键字修饰的变量称为静态变量,也叫类变量。静态变量在...
    99+
    2023-08-22
    Java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作