详解java中static关键词的作用

 更新时间:2021年01月06日 17:16:56   作者:Java架构没有996  
这篇文章主要介绍了java中static关键词的作用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在java中,static是一个修饰符,用于修饰类的成员方法、类的成员变量,另外可以编写static代码块来优化程序性能;被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问。

static关键词的作用

1、静态成员变量的语法特定
2、静态函数的语法特定
3、静态代码块的语法特定

定义静态成员变量

Person.java

class Person{
static int a;
}

按照以前可以这么调用

public class Test1{
public static void main(String[] args){
Person person = new Person();
person.a = 10;
System.out.println(person.a);
}
}

输出结果为10。

加上static后也可以这么使用:

public class Test1{
public static void main(String[] args){
Person.a = 10;
System.out.println(Person.a);
}
}

输出结果为10。

普通成员对象和静态成员变量的区别

普通成员变量对应p1和p2互不影响。而静态成员变量,p1和p2使用的是同一个变量。

在这里插入图片描述

静态函数

静态函数中不能直接引用非静态的成员变量,在静态函数中不能使用this.

定义静态函数

Person.java:

class Person{
static void fun(){
System.out.println("static function");
}
}

Test1.java

public class Test1{
public static void main(String[] args){
Person.fun();
}
}

输出:static function

静态代码块

静态代码块是在装载类的时候执行,作用是初始变量。

static{
System.out.println("static code");
}

到此这篇关于详解java中static关键词的作用的文章就介绍到这了,更多相关java中static关键词内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java项目实现猜拳小游戏

    java项目实现猜拳小游戏

    这篇文章主要为大家详细介绍了java项目实现猜拳小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • Java RabbitMQ的三种Exchange模式

    Java RabbitMQ的三种Exchange模式

    这篇文章主要介绍了Java RabbitMQ的三种Exchange模式,分别为Direct模式、Fanout模式、Topic模式,Rabbit的Direct Exchange模式是指消息发送导RouteKey中指定的Queue,Direct模式可以使用Rabbit自带的Exchange
    2022-08-08
  • Springboot快速集成sse服务端推流(最新整理)

    Springboot快速集成sse服务端推流(最新整理)

    SSE Server-Sent Events是一种允许服务器向客户端推送实时数据的技术,它建立在 HTTP 和简单文本格式之上,提供了一种轻量级的服务器推送方式,通常也被称为“事件流”(Event Stream),这篇文章主要介绍了Springboot快速集成sse服务端推流(最新整理),需要的朋友可以参考下
    2024-02-02
  • java 并发线程个数的如何确定

    java 并发线程个数的如何确定

    这篇文章主要介绍了java 并发线程个数的如何确定,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java+MySql图片数据保存与读取的具体实例

    Java+MySql图片数据保存与读取的具体实例

    之前一直没有做过涉及到图片存储的应用,最近要做的东东涉及到了这个点,就做了一个小的例子算是对图片存储的初试吧
    2013-06-06
  • 一文让你了解透彻Java中的IO模型

    一文让你了解透彻Java中的IO模型

    本文只是说明了IO模型,让你了解IO模型是什么,怎么区分IO模型,以及分析了Java中的三种IO模型,本文是纯理论知识,看完之后会让你对IO有更加深刻的理解,感兴趣的同学可以参考一下
    2023-05-05
  • Java多线程--让主线程等待所有子线程执行完毕在执行

    Java多线程--让主线程等待所有子线程执行完毕在执行

    Java主线程等待所有子线程执行完毕在执行,其实在我们的工作中经常的用到,本篇文章就介绍了Java多线程--让主线程等待所有子线程执行完毕在执行,有需要的可以了解一下。
    2016-11-11
  • java智能问答图灵机器人AI接口(聚合数据)

    java智能问答图灵机器人AI接口(聚合数据)

    这篇文章主要介绍了java智能问答图灵机器人AI接口(聚合数据),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Java面试题冲刺第二十六天--实战编程2

    Java面试题冲刺第二十六天--实战编程2

    这篇文章主要为大家分享了最有价值的三道java实战编程的面试题,涵盖内容全面,包括数据结构和算法相关的题目、经典面试编程题等,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Java如何使用流去除集合中某个字段为空的对象

    Java如何使用流去除集合中某个字段为空的对象

    这篇文章主要给大家介绍了关于Java如何使用流去除集合中某个字段为空的对象,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友可以参考下
    2023-08-08

最新评论