阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

静态与唯一(static/final)

360次阅读
没有评论

共计 2300 个字符,预计需要花费 6 分钟才能阅读完成。

1、static

1.1、static 概述

static 表示静态的意思,可以修饰变量、方法,还可以编写静态代码块。能够直接被类引用。

在我们平时的使用当中,static 最常用的功能就是修饰类的属性和方法,让他们成为类的成员属性和方法,我们通常将用 static 修饰的成员称为类成员(类变量与类方法)或者静态成员(静态变量与静态方法)。

1.2、static 应用

1.2.1、类变量

类变量就是用 static 修饰的成员变量。

class Student {private String name; private int age; // 学生的 id private int sid; // 类变量,记录学生数量,分配学号 public static int numberOfStudent = 0; public Student(String name, int age){this.name = name; this.age = age; // 通过 numberOfStudent 给学生分配学号 this.sid = ++numberOfStudent; } // 打印属性值 public void show() {System.out.println("Student : name=" + name + ", age=" + age + ", sid=" + sid ); } } public class StaticDemo01 {public static void main(String[] args) {Student s1 = new Student("张三", 23); Student s2 = new Student("李四", 24); Student s3 = new Student("王五", 25); Student s4 = new Student("赵六", 26); s1.show();// Student : name= 张三, age=23, sid=1 s2.show(); // Student : name= 李四, age=24, sid=2 s3.show(); // Student : name= 王五, age=25, sid=3 s4.show(); // Student : name= 赵六, age=26, sid=4 } }

运行结果:

静态与唯一(static/final)

1.2.2、类方法

static 的另一个作用,就是修饰成员方法。相比于修饰成员属性,修饰成员方法对于数据的存储上面并没有多大的变化,因为我们从上面可以看出,方法本来就是存放在类的定义当中的。static 修饰成员方法最大的作用,就是可以使用 ” 类名. 方法名 ” 的方式操作方法,避免了先要 new 出对象的繁琐和资源消耗,我们可能会经常在帮助类中看到它的使用:

public class StaticDemo02 {public static void print(Object o){System.out.println(o); } public static void main(String[] args) {StaticDemo02.print("Hello world"); } }

运行结果:

静态与唯一(static/final)

1.2.3、静态代码块

定义在类的里面方法的外面,随着类的加载而执行且执行一次,优先与 main()和构造方法执行。

格式:

class A{static{ } public void v(){}}
public class StaticDemo03 {static int x; static {System.out.println("静态代码块"); x = 12; } public StaticDemo03(){System.out.println("构造函数"); } public static void main(String[] args) {new StaticDemo03().print(); } public void print(){System.out.println(x); } }

运行结果:

静态与唯一(static/final)

2、final

2.1、final 概述

在 java 中,final 的含义在不同的场景下有细微的差别,但总体上来说,它指的是“这是不可变的”。

2.2、final 应用

2.2.1、修饰类

都是被 final 修饰的类,目的就是供我们使用,而不让我们所以改变其内容。

final class T{// T 为一个功能类,Scanner\Random public void t(){System.out.println("T"); } } public class FinalDemo01 extends T {// 不能被继承 public static void main(String[] args) {}}

2.2.2、修饰方法

final 修饰的方法,不能被重写

class T {public final void t() {//final 修饰的方法是唯一的 System.out.println("T"); } } public class FinalDemo01 extends T {public void t() {// 不能被重写 System.out.println("FinalDemo01"); } public static void main(String[] args) {}}

2.2.3、修饰变量

成员变量

被 final 修饰的成员变量是一个常量,叫符号常量。一般都有书写规范,所有字母都 大写

class A{final double PI=3.1415926; }

局部变量

声明的变量是唯一的不能重新赋值。

public class FinalDemo02 {public static void main(String[] args) {// 声明变量,使用 final 修饰 final int a; // 第一次赋值 a = 10; // 第二次赋值 a = 20; // 报错, 不可重新赋值 // 声明变量,直接赋值,使用 final 修饰 final int b = 10; // 第二次赋值 b = 20; // 报错, 不可重新赋值 } }

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-06-06发表,共计2300字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7819847
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...