【Java面向对象】java学习之旅12-static关键词

Java中static关键词 Java中static关键词 一旦用了static修饰,那么这样的内容不再属于对象自己,而是属于类的,所有本类的对象,都共享一份。 不需要创建对象也可使用类名直接调用。 静态的内容随着class文件的加载而加载。 1. 修饰变量 被static修饰的变量叫做静态变量,也叫做类变量。 这个变量属于类本身,而不是属于对象。 没有被static修饰的成员变量叫做实例变量,说明这个变量是属于具体对象的。 当通过类或者某个对象来修改静态变量时,所有使用到这个变量的地方,值都会变化。 public 阅读详情

static关键字的使用:

  1. 修饰成员变量:即为静态变量(类变量),所有的对象共享这个变量,可以用类名.属性调用之。
  2. 修饰成员方法:即为静态方法(类方法),所有的对象共享这个方法,可以用类名.方法调用之。
  3. 修饰代码块:即为静态代码块,本类被加载的时候会执行,并且只会执行一次。
  4. 修饰类:只能修饰内部类,即为静态内部类
  5. 修饰类的导入:类的静态导入,把目标类中的静态变量和静态方法导入为本类中的静态变量和静态方法。

注意:

  1. 普通方法可以直接使用静态方法、静态变量
  2. 静态方法不可以直接使用普通方法、普通变量
  3. 静态方法可以直接使用静态方法、静态变量

我们用一个女朋友类来简单说明这一点:

/**
 * 	女朋友类
 * @author junki
 * @date 2019年11月23日
 */
public class Girlfriend {
	
	static String name;
	private int age;
	private char sex;
	
	// 使用本类创建对象的使用执行一次,每次都会执行。
	{
		System.out.println("我是一个普通的代码块");
	}
	
	// 本类被加载的时候会执行,并且只会执行一次。
	static {
		System.out.println("我是一个静态的代码块");
	}
	
	public Girlfriend() {}
	
	public Girlfriend(String name, int age, char sex) {
		this.name = name;
		this.age = age;
		this.sex = sex;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	public char getSex() {
		return sex;
	}

	public void setSex(char sex) {
		this.sex = sex;
	}

	@Override
	public String toString() {
		return "Girlfriend [name=" + name + ", age=" + age + ", sex=" + sex + "]";
	}
	
	public static void eat() {
		System.out.println("吃");
	}
	
}
public static void main(String[] args) {
		
		Girlfriend gf1 = new Girlfriend("阿文", 18, '男');
		
		Girlfriend.name = "阿文";
		gf1.name = "汪江佩";
		
		System.out.println(gf1.toString());
		
		gf1.eat();
		Girlfriend.eat();
		
	}
	
	// 静态内部类
	static class Boyfriend {
		public String name;
		public int age;
	}

拓展知识:自定义工具类jar包的导出:

  • 用static关键词自定义工具类,可以直接使用,可以用final修饰类名,防止被继承
  • 右键项目-> Export -> JAR file -> 选择地址-> 点击finish
老款 NUC 复活计划:装 Ubuntu 部署 OpenClaw 本地 AI 老款 NUC 变身本地 AI 服务器指南 本文详细介绍了如何将老旧华硕 NUC 设备改造为本地 AI 服务器。主要内容包括: 硬件评估:列出老款 NUC 的最低配置要求(i3 6代/8GB内存/256GB SSD),并提供兼容性检查命令和性能预期表 系统准备:指导备份数据、下载 Ubuntu 22.04 LTS 和制作启动盘的方法(Windows/Linux双平台) 安装流程:从 BIOS 设置到 Ubuntu 安装的完整步骤,包括推荐的分区方案 系统优化:禁用不必要的服务、内核参数调优、Swap 配置和 阅读详情

相关推荐

EPSON RX8010SJ RTC实战:I2C寄存器配置避坑指南(附完整初始化代码)

本文详细解析了EPSON RX8010SJ RTC芯片在I2C寄存器配置中的常见问题与解决方案,包括TEST位、STOP位和中断控制等关键配置要点。通过实战经验分享和完整的初始化代码模板,帮助开发者避免常见陷阱,确保RTC模块的稳定运行。

weixin_28678831的博客 405

java基础学习day07(面向对象、static关键词、this关键词、super关键词)

java基础学习day07(面向对象、static关键词、this关键词、super关键词) 第一章 面向对象 1.1 什么是面向对象? 1.1.1 面向对象和面向过程的区别 1.面向对象:就拿人开车来说,在人开车这个实例中,人和车就是两个对象,人负责开车,车负责被开,在这里我们只看车子能不能开动,只要具备车有开的的功能,然后人有会开车的功能,车子就能开动,这里不用去管车子如何开动,人如何去开车的...

sosothing的博客 230

centos7下100T存储扩容(LVM)至150T

查看新增磁盘情况lsblk,fdisk -l [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 4.2G 0 rom vda 252:0 0 80G 0 disk ├─vda1 252:1 0 1G 0 part /boot └─vda2 252:2

tiyager的博客 1024

JAVA中static关键词作用和用法

JAVA中static关键词作用和用法 1.概述 1)在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,静态就是指编译后所分配的内存会一直存在,知道程序退出内存才释放。在JAVA程序中,所有的东西都是对象,对象的抽象就是类,一般情况下要先实例化对象后通过对象引用成员,但是用static修饰的成员可以通过类名.成员名直接访问。 2)被static修饰的成员变量和成员方法独立于该类的任何对象,不依赖于类特定的实例,可以被类的所有实例共享,并且只要这个类被加载,JAVA虚拟机就能根据类名在运行时数据

zh123456_789的博客 371

Open3D 可视化(1)——简单可视化【2026最新版】

简单可视化,博客长期更新,本文最新更新时间为:2026年5月10日。

点云侠的博客 5684

搭建你的第一个MCP服务器(Python版)

在上两篇博客中,我们已经对MCP(Model Context Protocol)有了初步的了解。MCP是一种强大的协议,能够简化LLM(大型语言模型)与外部工具的交互。今天,我们将通过一个具体的例子,展示如何使用Python搭建一个简单的MCP服务器。通过这个过程,你将能够更好地理解MCP的工作原理,并为后续的应用开发打下基础。在MCP中,工具(Tool)是服务器提供给LLM的接口。我们将定义一个简单的工具,用于接收输入文本并返回处理后的结果。首先,我们需要定义一个工具类。这个工具类将继承自,并实现run。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 8093

java中的Static、final、Static final各种用法

前言 对Static、final、Static final这几个关键词熟悉又陌生?想说却又不知怎么准确说出口?好的,本篇博客文章将简短概要出他们之间的各自的使用,希望各位要是被你的面试官问到了,也能从容的回答… static 加载:static在类加载时初始化(加载)完成 含义:Static意为静态的,但凡被static 修饰说明属于类,不属于类的对象。 可修饰:Static 可以修饰 内部类、方...

宜春 4万+

Algorithm:【算法进阶之路】之算法面试刷题集合—数据结构的简介、最强学习路线(逻辑结构【数组-链表-栈和队列/树-图-哈希】、物理结构【元素/关系】、数据运算【十大排序/四大查找-图三大搜索-

​ Algorithm:【算法进阶之路】之算法面试刷题集合—数据结构的简介、最强学习路线(逻辑结构【数组-链表-栈和队列/树-图-哈希】、物理结构【元素/关系】、数据运算【十大排序/四大查找-图三大搜索-树三大遍历】、高级算法【枚举/回溯/递归/分治/动规/贪心】)、问题为导向的十大类刷题算法总结之详细攻略 目录 相关文章 数据结构思维导图 基本术语 一、数据结构的概述 二、数据的逻辑结构 三、数据的物理结构 四、数据的运算

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 6849

java基础学习菜鸟入门第十天——Java面向对象(三)static关键词

Java基础知识——static关键词 3.9static关键词 3.9.1什么是static? static是一个修饰符,称之为静态的,共享的,用来修饰成员(成员变量和成员方法) 3.9.2static的使用及特点分析 static修饰的成员变量称之为静态变量或者类变量 static修饰的成员方法称之为静态方法 代码演示用法: i.(同一个类情况下)在static中访问非static修饰...

QZP51ZX的博客 274

【全球人口数据集】全球人口密度数据集GPWv4

全球人口密度数据集GPWv4

WW、forever的博客 1002

YOLOv11改进策略【Neck】| PRCV 2023,SBA(Selective Boundary Aggregation):特征融合模块,描绘物体轮廓重新校准物体位置,解决边界模糊问题

SBA 模块在医疗图像分割中具有重要作用,其设计出发点是解决图像中物体边界模糊以及融合特征时的冗余和不一致问题。

Limiiiing的博客 1942

深度理解Java中的static

目录 一、static的用法: 二、static的误区(问题思考) 三、问题思考: 一、static的用法: static可以用来修饰类的成员方法、类的成员变量、类中的内部类(以及用static修饰的内部类中的变量、方法、内部类),另外可以编写static代码块来优化程序性能。 作用: 方便在没有创建对象的情况下来进行调用(方法/变量)。 被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问。 ①修饰类的成员变量: static.

Ariel_欢 1万+

045、镜头模组公差链分析:从 Lens 到 Sensor 的装配公差累积与良率优化

本文深入分析了镜头模组从镜片到传感器各环节的公差累积问题及优化策略。文章首先剖析了四级公差链(镜片单体、镜筒装配、VCM定位、传感器贴装)的误差传递机制,指出各环节典型公差值及其影响(如5微米镜片偏差可导致0.02度光线偏折)。其次对比了最坏情况法与均方根法的差异,强调需考虑公差相关性(如镜片曲率与镜筒间隙的正相关性)。最后提出良率优化"三板斧":通过蒙特卡洛仿真优化公差分配、采用主动对准工艺在线补偿、建立数据反馈闭环系统,并结合"阴阳脸"案例说明如何定位根因(模具磨损+贴片机老化导致的误差叠加)。作者总结

sundong_81的博客 59

java之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); } } 输

wj1314250的博客 698

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Java 中的 static 关键词

目录static 关键词1.静态变量2.静态方法3.静态语句块 static 关键词 static 关键词主要用来修饰类的内部成员,如成员变量、成员方法、内部类和语句块等。它的功能就是限定这些成员只属于类,而与类的具体对象实例无关。 1.静态变量 用 static 修饰的成员变量成为静态变量或类变量。静态变量只有在系统加载类时,进行一次空间分配和初始化。创建该类的对象实例时,不再为静态变量分配空间...

qq_44329476的博客 260

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Static关键词

一、基本概念 我们可以一句话来概括:方便在没有创建对象的情况下来进行调用。 也就是说:被static关键字修饰的不需要创建对象去调用,直接根据类名就可以去访问… package oop.Static; //static可以扩展类或方法的使用范围 public class Student { private static int age; //静态的变量 private double score;//非静态变量 public static void run(){ }

Sunny_mnnnnn的博客 202

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

JAVA static 关键词详解

文章大纲: 1.为什么static会有这样的效果? 2.static的使用 3.static误区 4.static面试题 static的魔法效果是: 被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载了,就可以通过类名去进行访问。 为什么static会有这样的效果 这是一个简单的java程序创建的过程,我们可以看到,在类的首次加载的时候会去执行static的变量或者块,它是先于对象被加载的。所以不依赖于对象 JVM对这些static的东西只加载一次和分配一次内存.

wang_nian的博客 195

java基础学习笔记——day08(面向对象,构造器,this、static)

java基础学习笔记——day09 第三章——面向对象 1. 面向对象和面向过程 这里用人开车的例子说明: 面向过程: 人开车,人是一个对象,车是一个对象,我们只需要知道,人有开车这个功能,车有被开这个功能,我们不需要知道人是怎样开车的,车是怎样组成的或者被开的,只要知道人开车能到目的地就行 **面向过程:**人开车,人是怎样开车的我们要知道怎样开车的(考驾照,买车,上车,点火,启动,踩离...

TTHplus的博客 407

Java面向对象---Static关键词

内容 静态:Static 用法 Static是一个修饰符,用于修饰成员(成员变量,成员函数),当成员被静态修饰后,除了可以被对象调用外,还可以直接被类名调用。 举例 class Person { String name; //成员变量,实例变量 static String country = "CN"; //静态的成员变量,类变量 } public class StaticDemo { public static void main(String[] args) {

shayukaifa的博客 95

Java面向对象及关键词(下)

this --------------------------------------- *两种用法: 1) 引用当前对象: *)this 保存当前对象的内存地址(当前对象:正在调用的对象) *)用this调用当前对象 的成员: this.name this.toString() 2)构造方法之

Lxb_007的博客 273

【达内课程】面向对象之关键词static、final

达内课程-面向对象之关键词

Errol's Blog 483

(九)static 与 final 关键词的使用

(九)static 与 final 关键词的使用

qq_43070500的博客 196

一分钟带你了解java中的static关键词

java中的static关键词 Static基本规则: (1)一个类的静态方法只能访问静态属性。 (2)一个类的静态方法不能直接调用非静态方法。 (3)如果访问权限允许,static属性和方法可以使用对象加’.’方式调用,当然也可以使用实例加’.’方式调用。 (4)静态方法中不存在当前对象,所以不能使用this,当然也不能使用super。 (5)静态方法不能被非静态方法覆盖。 (6)构造方法不允许被声明为static的。 static关键词,可以加在方法上,成员变量上,代码块。 类就不要想了。 1. st

shayukaifa的博客 459

关键词static、final、 static final学习

1、被static修饰的成员变量和成员方法独立于该类的如何对象,被类

调上调下的女生 737

面向对象:static关键词

static关键字

一位即将谢顶的BD程序牛 69

Java基础之static关键词啥时候使用?

/* 静态什么时候用? 1,静态变量。 当分析对象中所具备的成员变量的值都是相同的 。 这时这个成员就可以被静态修饰。 只要数据在对象中都是不同的,就是对象的特有数据,必须存储在对象中,是非静态的。 如果是相同的数据,对象不需要做修改,只需要使用即可,不需要存储在对象中,定义成静态的。 2,静态函数。 函数是否用静态修饰,就参考一点,就是该函数功能是否有访问到对象中的特有数据。 简单点说,从源代码看,该功能是否需要访问非静态的成员变量,如果需要,该功能就是非静态的。 如果不需要,就可以将该功

独狼的博客 250
上一篇: 【Java面向对象】java的学习之旅11-封装
下一篇: 【Java面向对象】java学习之旅13-继承
JeffHan^_^
博客等级 码龄7年 1万+粉丝 134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

JeffHan^_^

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

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

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

打赏作者

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

抵扣说明:

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

余额充值