java static

1、static概念

(1)static 关键字是静态的意思,可以修饰成员方法,成员变量

(2)static 修饰的特点

      ① 被类的所有对象共享,这也是我们判断是否使用静态关键字的条件。

      ② 可以通过类名调用,当然,也可以通过对象名调用,不过推荐使用类名调用。

2、代码实现

(1)Student类

public class Student {public static int age = 20;public static void show(){System.out.println(age);}}

(2)Test类

public class Test {public static void main(String[] args) {Student s = new Student();//通过类名访问成员变量Student.age = 200;//通过对象名访问成员变量s.age =100;//通过类名访问成员方法Student.show();//通过对象名访问成员方法s.show();}
}

(3)运行结果

3、static访问特点

3.1 代码实现

public class Student {public static int age = 20;public String name ="张三";public static void show1(){System.out.println(age);System.out.println(name);}public  void show2(){System.out.println(age);System.out.println(name);}
}

上面的代码会有下图报错

原因是在静态方法里面访问了非静态的成员变量。

3.2 访问特点

(1)非静态的成员方法

       ① 能访问静态和非静态的成员变量、成员方法

(2)静态的成员方法

       ① 只能访问静态的成员变量和成员方法

总结成一句话就是:静态成员方法只能访问静态成员(包括变量和方法)。

为什么静态成员方法只能访问静态成员(包括变量和方法)?答案是,静态的内容是随着类的加载而加载,所以当类加载时,静态成员(包括变量和方法)是先进入内存的,而此时的非静态成员(包括变量和方法)是不在内存里的,因此静态成员方法如果想访问其它非静态成员(包括变量和方法)是访问不了的。

4、静态方法和实例方法的区别,参考 Java 中的 static:静态变量、静态方法,一切都在掌握中_java静态方法里的变量-CSDN博客

(1)关联性:静态方法与类本身相关,而实例方法与类的实例相关。

(2)调用方式:静态方法可以通过类名和对象实例调用,而实例方法只能通过对象实例来调用。

(3)访问权限:静态方法可以访问类的静态成员,但不能访问非静态成员(实例成员)。实例方法可以访问类的静态和非静态成员。

(4)内部引用:静态方法中不能使用this关键字,因为它没有当前对象的引用。实例方法可以使用this来引用当前对象。

(5)生命周期:静态方法在类加载时初始化,而实例方法在对象创建时初始化。


 

本文为学习笔记,所参考文章均已附上链接,若有疑问请私信!

创作不易,如果对你有点帮助的话麻烦点个赞支持一下!

新手小白,欢迎留言指正!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759077.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习-06-回归算法

总结 本系列是机器学习课程的系列课程,主要介绍机器学习中回归算法,包括线性回归,岭回归,逻辑回归等部分。 参考 fit_transform,fit,transform区别和作用详解!!!!!&am…

ActiViz三维场景的基本要素——相机

文章目录 前言一、基本属性和方法二、相机操作三、高级功能四、 示例代码和应用五、总结前言 在ActiViz中,vtkCamera是一个非常重要的类,用于定义观察场景的视角和位置。作为三维可视化的核心组件之一,vtkCamera决定了用户在三维场景中所看到的图像内容和视角,因此它对于呈…

突破编程_C++_STL教程( queue 的基础知识)

1 std::queue 概述 std::queue 是 C 标准模板库(STL)中的一种容器适配器,它提供了队列(Queue)这种数据结构的功能。队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作…

Linux运维_Bash脚本_编译安装Apache(httpd-2.4.54)

Linux运维_Bash脚本_编译安装Apache(httpd-2.4.54) Bash (Bourne Again Shell) 是一个解释器,负责处理 Unix 系统命令行上的命令。它是由 Brian Fox 编写的免费软件,并于 1989 年发布的免费软件,作为 Sh (Bourne Shell) 的替代品。 您可以在…

基于Java中的SSM框架实现在线通用旅游平台网站系统项目【项目源码+论文说明】计算机毕业设计

基于Java中的SSM框架实现在线通用旅游平台网站系统演示 摘要 近几年来,计算机网络的发展得到了飞速的提升,由此展开的一系列行业大洗牌也由此开始。早些年只是人们只是对于计算机和互联网有了些基础的认识,现在它正在悄悄的改变着我们生活的…

富格林:运用可信技巧揪出暗箱黑幕

富格林悉知,在伦敦金中,对于市场中的暗箱黑幕骗局投资者应该从容应对,利用可信技巧顺利盈利。在市场投资中,投资者需要不断的学习伦敦金基础知识,总结可信的做单方法,更要从以往案例分析受害原因正规预防。…

安装MySQL5.7.19 + 解决数据库乱码

文章目录 1.删除mysql服务 sc delete mysql2.解压到D:\mysql5.7下3.配置管理员环境变量4.D:\mysql5.7\mysql-5.7.19-winx64下创建my.ini1.创建文件2.文件内容 5.管理员打开cmd,切换到 D:\mysql5.7\mysql-5.7.19-winx64\bin6.输入 mysqld -install 安装mysql服务7.初…

网页无插件视频播放器,支持录像、截图、音视频播放,多路播放等,提供源码下载

前言 本播放器内部采用jessibuca插件接口,支持录像、截图、音视频播放等功能。播放器播放基于ws流,分屏操作支持1分屏、4分屏、6分屏、9分屏方式。 jessibuca工作原理是通过Emscripten将音视频解码库编译成Js(WebAssembly,简称was…

Java集合Collection之LinkedList

LinkeList LinkedList(双向链表)是一种常见的线性数据结构,但是并不会按线性的顺序存储数据。它由一系列节点组成,每个节点包含数据部分和一个指向下一个节点的引用。相比于数组,链表具有动态大小、插入和删除效率高的…

css第一个元素first-child匹配失败原因

<div><p>1</p><h1>2</h1><span>3</span><span>4</span> </div> 1、p:first-child 匹配的是p元素&#xff0c;因为p元素是div的第一个子元素 2、h1:first-child 匹配不到任何元素&#xff0c;因为在这里h1是di…

【电气安全】ASCP电气防火限流式保护器/末端回路线路保护

为什么要使用电气防火限流式保护器&#xff1f; 应急管理部消防救援局统计&#xff0c;在造成电气火灾事故的原因中&#xff0c;最为主要的当为末端线路短路&#xff0c;在电气火灾事故中占比高达70%以上。如何效预防末端线路短路引发的电气火灾事故&#xff1f; 现阶段最为常…

T470 双电池机制

ThinkPad系列电脑牛黑科技双电池管理体系技术,你知道吗&#xff1f; - 北京正方康特联想电脑代理商 上文的地址 在放电情况下&#xff1a;优先让外置电池放电&#xff0c;当放到一定电量后开始让内置电池放电。 在充电情况下&#xff1a;优先给内置电池充电&#xff0c;当充…

Perl: Can‘t locate List/MoreUtils.pm in @INC

BUG: 运行perl 脚本时报错&#xff1a; Cant locate List/MoreUtils.pm in INC (INC contains: /opt/rh/devtoolset-7/root/usr/lib64/perl5/vendor_perl /opt/rh/devtoolset-7/root/usr/share/perl5/vendor_perl /public/home/bgi_wangbinhu/perl5/lib/perl5/5.16.3/x86_64-l…

航空实时监控

1、从Kafka中读取飞机数据&#xff0c;并进行清洗 此步骤在前面的“使用Spark清洗统计业务数据并保存到数据库中”任务阶段应该已经完成。如果没有完成&#xff0c;请参考源代码自行完成。核心类主要有三个&#xff1a;SparkStreamingApplication类、SparkUtil类和MapManager类…

目标检测——YOLOR算法解读

论文&#xff1a;YOLOR-You Only Learn One Representation: Unifified Network for Multiple Tasks 作者&#xff1a;Chien-Yao Wang, I-Hau Yeh, Hong-Yuan Mark Liao 链接&#xff1a;https://arxiv.org/abs/2105.04206 代码&#xff1a;https://github.com/WongKinYiu/yolo…

CAPL如何实现TCP Packet的option字段

在TCP协议中,主机可以根据自身的需要决定TCP通信时是否携带option字段,来扩展TCP功能。option字段属于TCP首部的扩展部分,且是可选项,TCP根据首部中的offset字段值确定TCP报文是否携带option字段。 TCP首部固定的部分有20个字节,如果没有扩展部分(option字段),20个字节…

vue-生成二维码

安装 yarn add qrcodejs2 --save npm install qrcodejs2 --save 使用 <template><div><div id"qrcodeImg"></div><!-- 创建一个div&#xff0c;并设置id --></div> </template> <script> import QRCode from q…

设计模式之简单工厂模式详解

简单工厂模式 工厂模式&#xff1a;工厂方法模式&#xff1b; 低阶&#xff1a;简单工厂模式&#xff1b; 高阶&#xff1a;抽象工厂模式&#xff1b; 1&#xff09;概述 定义一个工厂类&#xff0c;根据参数的不同返回不同类的实例&#xff0c;被创建的实例通常都具有共同…

Linux快速入门,上手开发 01.学习路线

少时曾许凌云志&#xff0c;当取世间第一流 再见少年拉满弓&#xff0c;不惧岁月不飓风 —— 24.3.20 1.Linux的发展历史 2.VM虚拟机的Linux初体验 3.图形化页面设置系统——快速上手 4.命令行操作——向专业前进 5.核心操作命令——必知必会&#xff08;管理企业级权限/定位b…

打印租赁行业现状与未来发展趋势分析

办公设备租赁行业现状与未来发展趋势分析 1. 简介 办公设备租赁行业是近年来快速发展的行业之一&#xff0c;随着数字化办公的普及和企业成本控制的需求增加&#xff0c;办公设备租赁市场呈现出了蓬勃的发展态势。本报告将对办公设备租赁行业的现状、发展历程以及未来发展趋势…