详解java中static关键词的作用
作者:Java架构没有996 发布时间:2023-12-02 00:32:00
标签: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");
}
来源:https://blog.csdn.net/wj1314250/article/details/111627334


猜你喜欢
- 需要注意的一点是,feign好像是无法传递list集合类型的,但是你可以通过传递对象类型,然后在接收方再次将对象装在集合中达到集合传递的效果
- 这几天恰好和朋友谈起了递归,忽然发现不少朋友对于“尾递归”的概念比较模糊,网上搜索一番也没有发现讲解地完整详细的资料,于是写了这么一篇文章,
- Java停止线程的逻辑(协同、通知)在Java程序中,我们想要停止一个线程可以通过interrupt方法进行停止。但是当我们调用interr
- Kotlin中的一个伟大创前举就是空指针的处理,在代码的编译阶段就能检测可能出现的空指针问题,示例代码如下:data class Perso
- 问题背景实际项目碰到一个上游服务商接口有10秒的查询限制(同个账号)。项目中有一个需求是要实时统计一些数据,一个应用下可能有多个相同的账号。
- 本文实例讲述了Android编程获取GPS数据的方法。分享给大家供大家参考,具体如下:GPS是Android系统中重要的组成部分,通过它可以
- package com.eboy.testyaoyiyao; import java.text.SimpleDateFormat; impo
- Unity Shader学习:裁切效果,供大家参考,具体内容如下之前看到有人问关于物体裁切方面的问题,初学shader的话可能搞得不是很明白
- CountDownLatch 是一个非常实用的多线程控制工具类。” Count Down ” 在英文中意为倒计数, Latch 为门问的意思
- 在Android中实现菜单功能有多种方法。 Options Menu:用户按下menu Button时显示的菜单。 Context Menu
- for循环语句重复执行语句,直到条件变为 false。语法for ( init-expression ; cond-expression ;
- 1 引入 pom 包<dependency> <groupId>io.github.res
- 从Microsoft .Net 2.0版本以后,就默认提供了System.IO.Ports.SerialPort类,用户可以非常简单地编写少
- 1.查询(get)-调用的时候记得开线程GET一般用于获取/查询资源信息val sb = StringBuffer() try { &nbs
- JAVA基础八股文Switch能支持哪些类型?jdk5之前,switch能够作用在byte,short,char,int(实际上都是提升为i
- java 算法之归并排序详解一、思想 归并排序:将一个数组排序,可以先(递归地)将它分成两半部份分别排序,然后将结果归并起来; &
- 一、TestNG介绍TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方
- 这篇文章主要介绍了SpringBoot Jpa分页查询配置方式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价
- 前言:IntelliJ IDEA 如果说IntelliJ IDEA是一款现代化智能开发工具的话,Eclipse则称得上是石器时代的东西了。其
- 整型变量基本语法格式int变量名= 初始值;代码示例int a = 10;int表示变量的类型是一个整型。在 Java 中, 一个int变量