JAVA关键字-static,以及static应用(代码块)

ROS自定义地图实战:从CAD到导航的完整流程 本文详细介绍了如何将CAD图纸或手绘草图高效转换为ROS机器人可直接使用的导航地图。通过解析PGM与YAML标准格式,提供从图像处理、尺度校准到集成AMCL与move_base导航栈的完整实战流程,帮助开发者跳过繁琐的SLAM建图,实现快速、精准的自定义地图部署。 阅读详情

目录

 引言

一,static的定义

二,static修饰

2.1,static修饰的变量

2.2,static修饰的方法

2.2.1,static修饰的成员方法的使用

三,代码块

3.1,代码块的定义

3.2,代码块类别

3.2.1,静态代码块

3.2.2,构造代码块(了解,见的少)


 引言

        在 Java 中,static 是一个关键字,主要用于修饰类变量、方法或代码块,其含义跟随所修饰的对象不同而不同。

一,static的定义

  • static是静态的意思,可以修饰成员变量和成员方法。

  • static修饰成员变量表示该成员变量只在内存中只存储一份,可以被共享访问、修改。

二,static修饰

2.1,static修饰的变量

  • 静态变量:(有static修饰,属于类,内存中加载一次)
  • 实例变量:(无static修饰,存在于每个对象中)

2.2,static修饰的方法

  • 静态方法(有static修饰,归属于类),建议用类名访问,也可以用对象访问。

  • 实例方法(无static修饰,归属于对象),只能用对象触发访问。

2.2.1,static修饰的成员方法的使用

  • 表示对象自己的行为的,且方法中需要访问实例成员的,则该方法必须申明成实例方法。

  • 如果该方法是以执行一个共用功能为目的,则可以申明成静态方法.

  • static 修改方法称为静态方法。静态方法无需创建对象就可以直接使用。

示例代码:


public class Person {
	
	String name;
 
	static String city = "北京"; 
	 
	public void say(String name) {
		this.name = name;
		
	}
 
	public static void  talk() {
        //静态方法不能调用非静态方法,编译不通过		
        //say("张三");
		//this. 不能使用this关键字
		//super.不能使用super关键字
		System.out.println("我来自:"+city);
	}
	
	public static void main(String[] args) {
        //没有实例化对象,talk方法就可以直接使用
		talk(); 
	}
	
	 

三,代码块

3.1,代码块的定义

  • 代码块是类的5大成分之一(成员变量、构造器,方法,代码块,内部类),定义在类中方法外。
  • 在Java类下,使用{}括起来的代码被称为代码块。
  • 在java类下,用static修饰的代码块被称为静态代码块。

3.2,代码块类别

3.2.1,静态代码块

语法结构:

static{

        Java语句

}

特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次

使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使用。

3.2.2,构造代码块(了解,见的少)

语法结构:

{

        Java语句

}

特点:每次创建对象,调用构造器执行时,都会执行该代码块中的代码,并且在构造器执行前执行

使用场景:初始化实例资源。

示例代码:

public class Static1 {
    {
        System.out.println("代码块");
    }
    static {
        System.out.println("静态代码块");
    }
    public static void main(String[] args) {
        Static1 s=new Static1();
        Static1 s1=new Static1();
        Static1 s2=new Static1();
    }
}

输出结果如下:

Tera Term介绍和使用指南 Tera Term 是一个用于 Windows 操作系统的免费终端模拟器和串口通信软件。它主要用于在计算机和其他设备之间建立串口通信连接,例如通过串行线缆连接到设备如路由器、开发板或嵌入式系统。Tera Term 支持多种通信协议和功能,包括 Telnet、SSH 和串口通信。提供了一个终端窗口,模拟了常见的终端类型,如VT100。支持通过串口与设备进行通信,可用于与嵌入式系统、微控制器等设备进行连接。提供 Telnet 和 SSH 功能,可用于通过网络连接到远程主机。 阅读详情

相关推荐

PPT+视频 | 详解智能营销增益模型(uplift model)

分享营销增益模型的原理和常见的建模及评估方法,并以淘票票智能票补为例介绍uplift model技术的实践经验。

阿里文娱技术 8626

【Java|基础篇】详解static关键字和代码块

本文主要讲解static关键字以及代码块的执行顺序以及各部分代码块的作用.static关键字可以用来定义类级别的变量、方法和代码块,通过类名直接访问静态成员变量和静态成员方法. 而代码块的执行顺序以及各部分代码块的作用也很重要.希望这篇文章能帮到你!专栏:《从零开始的Java学习之旅》在不断更新中,欢迎订阅!“愿与君共勉,携手共进!

云泽野の编程日记 2191

Cursor聊天记录迁移工具:实现跨设备AI对话同步与备份

在软件开发中,数据持久化与迁移是常见需求,尤其当工具依赖本地存储时。SQLite作为轻量级关系型数据库,因其嵌入式、零配置特性,常被用于存储应用状态与用户数据。其WAL(预写式日志)模式提升了并发性能,但也增加了数据操作复杂性。通过命令行工具与JSON序列化技术,可以实现结构化数据的提取、转换与安全迁移,这对于保障开发资产的连续性与可移植性具有重要价值。例如,在AI辅助编程场景下,开发者与AI的对话记录包含关键的问题分析、解决方案与决策逻辑,是重要的上下文资产。cursor-chat-transfer工具正

weixin_42551967的博客 533

java代码块详解(局部代码块、构造代码块、静态代码块)

代码块:在类中或者方法中,使用{}括起来的一段代码,就称它是代码块。 代码块分为:局部代码块、构造代码块、静态代码块三种 局部代码块 位置:定义在方法或语句中 作用:限定变量的生命周期,及早释放,提高内存利用率 void save() { // 局部代码块 { // 代码块当中 定义的变量,我们称它是局部变量 int a = 10; System.out.println(a); } if(true) { system.out.print("true")

weixin_46421519的博客 658

脑电分析:为什么大脑信号会“变同步”?——事件相关同步化与去同步化 (ERS/ERD) 全景解析

脑电分析中的事件相关同步化(ERS)和去同步化(ERD)是研究大脑动态节律的重要方法,反映特定任务下脑电频段能量的变化。ERD表示神经元活动分散(功率下降),提示脑区活跃处理信息;ERS则反映神经元同步(功率增强),常与静息状态相关。本文详解了ERS/ERD的生理机制、计算流程(包括基线校正和功率谱分析),并提供了Python实现示例,展示如何通过Welch法和STFT进行时频分析,生成ERD/ERS热力图。该技术广泛应用于运动想象脑机接口、癫痫检测等领域,为理解大脑功能状态提供了量化工具。

qq_32516809的博客 1394

手把手教你用AD9834 DDS模块DIY一个可调信号源(附AD原理图/PCB/程序)

本文详细介绍了如何使用AD9834 DDS模块DIY一个高精度可调信号源,涵盖硬件搭建、原理图解读、PCB优化和程序烧录等关键步骤。通过STM32控制实现0-10MHz频率范围输出,特别适合电子设计与射频实验,提供完整的AD原理图、PCB设计和程序代码参考。

weixin_31854867的博客 406

Java类的static成员以及代码块(详细版)

在Java的类中一般定义有成员属性,以及成员方法两种,但实际上两种可以算为一类,但还可以定义另外一种,就是被static修饰的变量和方法,被static修饰的变量称之为静态变量,也可以叫类变量;被static修饰的方法被称之为静态方法,也可以叫类方法。被static修饰的成员,最大的特性就是其不属于对象,不依靠对象,这也就意味着被static修饰的成员在没有实例化对象的情况下就可以使用,被static修饰的成员其属于类,是所有对象所共享的,可以直接使用类名访问并调用。

L326214的博客 2024

每天一个优秀提示词学习收藏 - 文本创作篇(二)

宝子们,今天不藏私啦!我把这段时间四处搜罗、潜心钻研出来的文本创作 Prompt 提示词大礼包双手奉上,这可都是能让你的 AI 创作水平原地起飞的干货!走过路过不要错过,赶紧码住,开启你的 AI 创作进阶之旅吧!

2401

Java基础(十):静态变量、静态方法、代码块、main方法

静态变量、静态方法、代码块、main方法

shendaiyan的博客 4312

前端实现微信扫一扫的思路

本篇文章的关键点就是讲解了我在实现处理多张二维码的场景时的思路,利用canvas遮挡识别过的二维码这个思路是pbk-bin大佬最先想到的,在实现这个需求以后还是很感叹这个思路的巧妙。👏pbk-bin🎁~如果文章对你有帮助,不妨赠人玫瑰,手有余香,预计将会在下篇更新较为完整的微信扫一扫界面和功能。

fang_my的博客 2488

关于“为爱发电”的一些说明~~

专栏教学资料+工程文件

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 2674

【Java基础教程】(十一)面向对象篇 · 第五讲:透彻讲解Java中的static关键字及代码块——静态属性、静态方法,普通代码块、构造块、静态块的使用~

本文详细介绍了Java中的static关键字以及代码块的使用。通过学习static关键字,我们了解到它可以用于定义静态属性和静态方法。静态属性是类级别的变量,在整个类中只有一份副本,并且被所有实例对象所共享。静态方法则是类级别的方法,可以通过类名直接调用,而无需创建对象实例。 同时,我们也探索了代码块的不同类型:普通代码块、构造块和静态块。普通代码块用于在方法中限定变量的作用域,构造块在创建对象时执行,用于初始化对象的特定属性,而静态块在类加载时执行,常用于初始化静态成员和执行其他预处理操作。

Technology changes the world of life 2462

优化YOLOv8检测精度:Damo-YOLO的RepGFPN特征融合技术解析【YOLOv8】

YOLOv8在结构上依旧延续了自YOLOv4以来的CSPNet(Cross Stage Partial Network)和FPN(Feature Pyramid Network)的设计,结合了PANet(Path Aggregation Network)来增强特征的多尺度表达。然而,随着目标检测任务的复杂性增加,如何更有效地融合不同层级的特征成为提升检测性能的关键。Damo-YOLO中的RepGFPN引入了重参数化的思想,通过在训练和推理阶段对特征融合模块进行结构优化,显著提升了检测效果。

博客 1583

Java|static关键字的应用【工具类、代码块和单例】

详细介绍static关键字在含工具类、代码块和单例中的具体应用

做技术人 · 产优质博客 · 找好工作 1497

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Java:静态代码块(static关键字应用之一)、实例代码块(实例初始化块)

Java:静态代码块(static关键字应用之一)、实例代码块(实例初始化块)

听海边涛声 1698

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

java温习*(6):static关键字的应用---静态代码块

应用三:static + 代码块 vs 代码块 概念: 静态代码块:被static修饰的,定义在类内部,用{}括起的代码段。 构造代码块:没有被static修饰的,定义在类内部,用{}括起的代码段。 普通代码块:定义在方法内部,用{}括起的代码段。 特征: 静态代码块: 只能出现在类内,不允许出现在方法内。 可以出现多次,按顺序在类加载时执行。 无论该类实例化多少对象,只执行一次。 构造代码块: 可以在类内出现多次,按顺序在每个对象实例化时执行。 执

Y.z-努力才有成功的机会... 260

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

java中static关键字的使用说明

1、static关键字的用途  在《Java编程思想》P86页有这样一段话:   “static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。”   这段话虽然只是说明了static方法的特殊之处,但是可以看出static关键字的基本作用,简...

奋斗的哼哼 3万+

Java 中 static 关键字详解(更新版)

关键字是Java中一个非常重要的修饰符,它可以用来修饰变量、方法、代码块和内部类。被修饰的成员具有以下几个重要特点:类成员而非实例成员:内存分配特点:访问方式:常见应用场景:静态方法限制:静态代码块: 静态内部类:需要注意的是,过度使用静态成员可能导致代码难以维护和测试,特别是在需要考虑多线程安全的情况下。当变量被修饰后,就成为了静态变量(也称为类变量),它与普通实例变量有本质区别:初始化时机:访问方式:共享特性:生命周期: count变量:访问方式对比:共享验证:对象计数器:常量定义: 共

Toroto5的博客 2001

[java] static关键字总结

Table of Contents 概述 修饰类的变量 修饰方法 修饰代码块 静态导入包 用法 static关键字与java内存 概述 static 在java体系里的地位:java语言的一个修饰符,属于非访问修饰符,所谓访问修饰符就是控制访问权限的修饰符,如public,protected,private,default 再来看看static翻译成中文的意思:静止...

topdeveloperr的博客 1635

Java之美[从菜鸟到高手演变]之Java中static关键字

Java中的static关键字解析 本文转子博客园,单击此处阅读原文static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一。下面就先讲述一下static关键字的用法和平常容易误解的地方,最后列举了一些面试笔试中常见的关于static的考题。以下是本文的目录大纲:一.static关键字的用途二.st

智慧演绎,无处不在 2万+

java中static关键字的作用

static关键字主要有两种作用: 第一,为特定数据类型或对象分配单一的存贮空间,而与创建对象的个数无关。第二,希望某个方法或属性与类而不是对象关联在一起,也就是说, 在不创建对象的情况下就可以通过类来直接调用方法或使用类的属性。具体而言,static在java中主要有四种使用情况:成员变量、成员方法、代码块及内部类。 (1)static成员变量 虽然jav...

m0_37876631的博客 1万+

java关键字--static、final以及代码块

java关键字--static、final以及代码块

qq_51470789的博客 131

【轻松拿捏 】Java-static关键字(面试)

小伙伴们在面试中被问到关于 static 关键字的问题时,可以从其定义、用途、作用、实际应用以及常见误区等方面进行回答,并提供具体的代码示例以展示对其概念的深入理解和实际应用能力。以下是一些面试回答技巧和示例

边走、边悟、迟早变好 2292

Java基础(十):关键字static、代码块、关键字final

对比静态变量与实例变量。

java开发 1418

static关键字与代码块

文章目录static关键字与代码块一、static关键字1、静态属性2、静态方法二、代码块1、普通代码块2、构造代码块3、静态代码块 static关键字与代码块 一、static关键字 static是一个用于声明程序结构的关键字,意为“静态的”,此关键字可以用于全局属性和全局方法,主要特点是可以避免对象实例化的限制,在没有实例化对象的时候直接进行此类结构的访问。 1、静态属性 在一个类中,主要的组成就是属性和方法,而每一个对象都分别拥有各自的属性内容(不同对象的属性保存在堆内存的不同地址中)。 如果想要类中

Window_mouse的博客 1万+

Java中的static关键字

在Java编程中,static关键字是一个频繁出现的关键字,它可以用于定义静态成员和静态方法,以及静态代码块。理解static的作用和用法对于Java程序员来说至关重要。本篇博客将介绍static关键字的基本概念,并探讨其在实际开发中的应用场景。staticstatic静态代码块是一个用于初始化静态成员的代码块,它在类加载时执行,并且只执行一次。静态代码块通常用于初始化静态变量或者执行一些静态操作。静态内部类是在类中使用static关键字修饰的内部类,它与外部类的实例对象无关,可以直接通过外部类名访问。

2401_86950953的博客 922
上一篇: JAVA时间戳-Calendar类(包括set,get,add方法)
下一篇: JAVA基础-String对象类的常用方法和应用
涵冰...
博客等级 码龄4年 2438粉丝 243原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

涵冰...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值