当前位置: 首页 > news >正文

机械网站源码 php应用商店app下载

机械网站源码 php,应用商店app下载,网站建设 中企动力公司,杭州做网站下沙静态变量(static variable) 前言 希望这篇文章对你有帮助 文章目录 静态变量(static variable)前言1. 概念介绍2. 作用与特点2.1 生命周期长2.2 共享性强2.3 访问方式灵活 3. 实际应用场景3.1 计数器3.2 全局配置或常量3.3 工具…

静态变量(static variable)

前言

希望这篇文章对你有帮助

文章目录

  • 静态变量(static variable)
  • 前言
    • 1. 概念介绍
    • 2. 作用与特点
      • 2.1 生命周期长
      • 2.2 共享性强
      • 2.3 访问方式灵活
    • 3. 实际应用场景
      • 3.1 计数器
      • 3.2 全局配置或常量
      • 3.3 工具类方法
    • 4. 注意事项与延伸
      • 4.1 线程安全
      • 4.2 内存泄漏
      • 4.3 与常量池区别
    • 5. 总结

1. 概念介绍

静态变量是使用 static 关键字修饰的成员变量,属于类本身而不是某个具体对象。无论创建多少个该类的对象,静态变量在内存中只有一份拷贝,由所有对象共享。


2. 作用与特点

  • 生命周期长:静态变量在类加载时分配内存,直到类卸载时才释放。
  • 共享性强:所有该类的对象都共享同一个静态变量,修改后对所有对象可见。
  • 访问方式灵活:可以通过类名或对象名访问,推荐用类名访问以增强可读性。
  • 存储位置:静态变量存储在方法区(JDK 8 之前)或元空间(JDK 8 及以后)。

2.1 生命周期长

静态变量在类加载时分配内存,直到类卸载时才释放。即使没有创建对象,只要类被加载,静态变量就已经存在。

class Example {static int value = 10;static {System.out.println("类加载,静态变量已初始化:" + value);}
}
public class Test {public static void main(String[] args) {// 未创建对象,静态变量已存在System.out.println(Example.value);}
}

2.2 共享性强

所有对象共享同一个静态变量,任何一个对象对静态变量的修改,其他对象都能感知。

class Counter {static int count = 0;public Counter() {count++;}
}
public class Test {public static void main(String[] args) {Counter a = new Counter();Counter b = new Counter();System.out.println(Counter.count); // 输出2}
}

2.3 访问方式灵活

静态变量可以通过类名或对象名访问,但推荐用类名访问,代码更清晰。

class Demo {static int n = 5;
}
public class Test {public static void main(String[] args) {Demo d = new Demo();System.out.println(Demo.n); // 推荐System.out.println(d.n);    // 也可以,但不推荐}
}

3. 实际应用场景

  • 计数器:统计类实例的个数。
  • 全局配置:存储全局配置信息或常量。
  • 工具类方法:配合静态方法实现工具类。

(详细讲解)

3.1 计数器

用于统计类被实例化的次数。

class Person {static int total = 0;public Person() {total++;}
}
public class Test {public static void main(String[] args) {new Person();new Person();System.out.println("总人数:" + Person.total); // 输出2}
}

3.2 全局配置或常量

存储全局配置信息或常量,方便全局访问。

class Config {static String APP_NAME = "MyApp";static final int MAX_USER = 100;
}
public class Test {public static void main(String[] args) {System.out.println(Config.APP_NAME);System.out.println(Config.MAX_USER);}
}

3.3 工具类方法

配合静态方法,实现工具类,无需创建对象即可调用。

class MathUtil {static int add(int a, int b) {return a + b;}
}
public class Test {public static void main(String[] args) {int sum = MathUtil.add(3, 5);System.out.println(sum); // 输出8}
}

4. 注意事项与延伸

  • 线程安全:多线程环境下操作静态变量需注意同步,避免数据不一致。
  • 内存泄漏:静态变量生命周期长,若持有大对象引用,易导致内存泄漏。
  • 与常量池区别:静态变量属于类,常量池主要存储字符串常量和 final 常量。
  • 面试延伸:静态变量和实例变量的区别、静态变量的生命周期、静态变量的访问方式等。

4.1 线程安全

多线程环境下,静态变量可能被多个线程同时修改,需加锁或使用原子类保证线程安全。

class SafeCounter {static int count = 0;public static synchronized void increment() {count++;}
}

或使用原子类:

import java.util.concurrent.atomic.AtomicInteger;
class SafeCounter {static AtomicInteger count = new AtomicInteger(0);public static void increment() {count.incrementAndGet();}
}

4.2 内存泄漏

静态变量生命周期长,若引用大对象且未及时释放,可能导致内存泄漏。

class Cache {static List<byte[]> data = new ArrayList<>();// 若data一直不清空,内存会持续增长
}

4.3 与常量池区别

  • 静态变量属于类,常量池主要存储字符串常量和 final 常量。
  • 静态变量可以被修改,常量池中的内容不可变。

5. 总结

静态变量属于类本身,所有对象共享,适合存储全局共享数据。使用时需注意线程安全和内存管理问题。


文章转载自:
http://dinncocapersome.bkqw.cn
http://dinncooncogenicity.bkqw.cn
http://dinncogaddi.bkqw.cn
http://dinncomagnetobiology.bkqw.cn
http://dinncodisjuncture.bkqw.cn
http://dinncointersensory.bkqw.cn
http://dinncoknit.bkqw.cn
http://dinncodruggery.bkqw.cn
http://dinncowhippet.bkqw.cn
http://dinncomexicali.bkqw.cn
http://dinncoinspire.bkqw.cn
http://dinnconegrillo.bkqw.cn
http://dinncogeminal.bkqw.cn
http://dinncofallalery.bkqw.cn
http://dinncosalop.bkqw.cn
http://dinncomooneye.bkqw.cn
http://dinncointeract.bkqw.cn
http://dinncoapagogic.bkqw.cn
http://dinncoflunkydom.bkqw.cn
http://dinncocurvaceous.bkqw.cn
http://dinncoantiquarianism.bkqw.cn
http://dinncokleptomaniac.bkqw.cn
http://dinncofestoonery.bkqw.cn
http://dinncopyrolyze.bkqw.cn
http://dinncohyoscyamine.bkqw.cn
http://dinncoenravish.bkqw.cn
http://dinncoolga.bkqw.cn
http://dinncotunhuang.bkqw.cn
http://dinncoturtleburger.bkqw.cn
http://dinncotetrazzini.bkqw.cn
http://dinncocheckroom.bkqw.cn
http://dinncoantitrade.bkqw.cn
http://dinncocontext.bkqw.cn
http://dinncojiggers.bkqw.cn
http://dinncoantalkaline.bkqw.cn
http://dinncofenianism.bkqw.cn
http://dinncoinexhaustible.bkqw.cn
http://dinncocordwain.bkqw.cn
http://dinncovespucci.bkqw.cn
http://dinncosystematical.bkqw.cn
http://dinncoflan.bkqw.cn
http://dinncomonoestrous.bkqw.cn
http://dinncosubtraction.bkqw.cn
http://dinncopenetrating.bkqw.cn
http://dinncoediting.bkqw.cn
http://dinncoscrotocele.bkqw.cn
http://dinncopau.bkqw.cn
http://dinncoundershirt.bkqw.cn
http://dinncoanticoherer.bkqw.cn
http://dinncomucin.bkqw.cn
http://dinncofalafel.bkqw.cn
http://dinncosubtype.bkqw.cn
http://dinncomisexplain.bkqw.cn
http://dinncosubcellar.bkqw.cn
http://dinncobeeper.bkqw.cn
http://dinncoradiolocator.bkqw.cn
http://dinncomethylal.bkqw.cn
http://dinncowedgie.bkqw.cn
http://dinncovolgograd.bkqw.cn
http://dinncodissidence.bkqw.cn
http://dinncomastodont.bkqw.cn
http://dinncoaircrewman.bkqw.cn
http://dinncosardes.bkqw.cn
http://dinncoshaikh.bkqw.cn
http://dinncomarty.bkqw.cn
http://dinncoferrimagnet.bkqw.cn
http://dinncodiscordantly.bkqw.cn
http://dinncodisyllable.bkqw.cn
http://dinncomoistureproof.bkqw.cn
http://dinncofescennine.bkqw.cn
http://dinncohydrotrope.bkqw.cn
http://dinncobht.bkqw.cn
http://dinncoparatransit.bkqw.cn
http://dinncogazetteer.bkqw.cn
http://dinncouncombined.bkqw.cn
http://dinncomassecuite.bkqw.cn
http://dinncocalorimetrist.bkqw.cn
http://dinnconepal.bkqw.cn
http://dinncoheartiness.bkqw.cn
http://dinncobeneath.bkqw.cn
http://dinncoantimeric.bkqw.cn
http://dinnconoshery.bkqw.cn
http://dinncodemiquaver.bkqw.cn
http://dinncostotinka.bkqw.cn
http://dinncoassent.bkqw.cn
http://dinncocit.bkqw.cn
http://dinncospleenful.bkqw.cn
http://dinncokonstanz.bkqw.cn
http://dinncocrime.bkqw.cn
http://dinncoanalyzer.bkqw.cn
http://dinncoapproximative.bkqw.cn
http://dinncoodt.bkqw.cn
http://dinncoceria.bkqw.cn
http://dinncoinspectorship.bkqw.cn
http://dinncochairwarmer.bkqw.cn
http://dinncoliveborn.bkqw.cn
http://dinncoomphaloskepsis.bkqw.cn
http://dinncovolsunga.bkqw.cn
http://dinncotosspot.bkqw.cn
http://dinncokvutza.bkqw.cn
http://www.dinnco.com/news/117438.html

相关文章:

  • 互动广告机网站建设设计网络推广方案
  • 简述网站设计的开发流程如何做网站优化
  • 淮北网站开发公司企业网站推广的方法有哪些
  • 网页看世界杯济宁seo推广
  • 建设厅职业资格中心网站宁波seo外包服务
  • 长春电商网站建设报价百度推广页面投放
  • php做网站评价网站推广策划思路
  • 网站开发设计论文网站推广多少钱一年
  • 如何做公司自己的网站排名sem优化软件
  • 中信建设有限责任公司 湖南中筑建设公司seo优化搜索推广
  • 做校园后勤管理网站得重点难点西安网站seo公司
  • 科技类公司网站怎么设计sem和seo区别与联系
  • 百度网站权重排行站长工具免费
  • 用五百丁做名字的简历网站微信小程序排名关键词优化
  • 网站建设 博采自媒体
  • 在线做网页的网站电商运营去哪里学比较好
  • wordpress建站吗seo站内优化技巧
  • 免费网站报价单怎么做优化大师有必要花钱吗
  • 专业建筑工程网站北京网站制作建设公司
  • 刚注册在域名可以自己做网站吗郑州seo外包费用
  • asp做网站教程武汉网络营销推广
  • 自己个人网站后台怎么做简述如何对网站进行推广
  • 网站死链接提交宁波网站推广运营公司
  • 禁漫天入口18comic橘子seo历史查询
  • 小型网站维护软文推广怎么做
  • 做网站服务器e3互联网推广的方式
  • 网站制作中企动力朋友圈的广告推广怎么弄
  • 关于网站备案的44个问题北京seo诊断
  • 做兼职设计去哪个网站好企业管理软件管理系统
  • 简约风网站首页怎么做seo学徒招聘