Java中类变量(静态变量)和类方法(静态方法)
类变量
- 类变量也叫静态变量或静态属性,是该类所有对象共享的变量任何一个该类的对象去访问它时,取得都是一样的值
- 语法:
- 访问修饰符 static 数据类型 变量名
- static 访问修饰符 数据类型 变量名
- 细节:
- 类变量随着类的加载而创建一次
- 什么时候需要类变量:当需要让某个类的所有对象都共享一个变量时,就可以考虑类变量。例如:定义学生类,定义类变量统一学生花了多少钱
- 类变量必须遵守访问权限
- 类变量与实例变量的区别:类变量时该类的所有对象实例共享的,实例变量时每个对象独享的
类方法
- 类方法有叫静态方法
- 语法:
- 访问修饰符 static 数据类型 方法名{ }
- static 访问修饰符 数据类型 方法名{ }
- 细节:
- 类方法中不允许使用和对象有关的关键字。比如:super、this
- 类方中只能访问静态变量和静态方法
- 普通方法既可以访问非静态的成员,也可以访问静态的成员
- 类方法和普通方法都是随着类的加载而加载,将结构信息储存到方法去:类方法没有this参数,普通方法中有this参数
总结:
- 静态方法只能访问静态的成员
- 非静态成员可以访问非静态成员也可以访问静态成员
Java中类变量(静态变量)和类方法(静态方法)的更多相关文章
- Java中的静态变量、静态方法、静态代码块
转载自http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796209.html (一)静态方法(1)在Java里,可以定义一个不需要创建对 ...
- java入门---变量类型&类变量&局部变量&实例变量&静态变量
在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ; ...
- java常量,变量,静态变量的理解
最近考试出了一个很简单的题,看看他们对java常量,变量,静态变量的理解,代码如下: public class TestVar { /** * JAVA基础,常量,变量,静态变量 */ public ...
- java中的静态变量、静态方法与静态代码块详解与初始化顺序
我们知道类的生命周期分为装载.连接.初始化.使用和卸载的五个过程.其中静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...
- java中的静态变量,静态方法与静态代码块详解
java中的类的生命周期分为装载,连接,初始化,使用,和卸载五个过程. 而静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...
- Java中的静态变量、静态方法问题
由关键字static所定义的变量与方法,分别称为静态变量和静态方法,它们又都被称为静态成员 1.静态方法 无需本类的对象也可以调用此方法,调用形式为“类名.方法名”,静态方法常常为其他类提供一些方法而 ...
- JAVA中类以及成员变量和成员方法的修饰符的总结
一 类的修饰符 java中的文件结构由大到小为:一个工程,一个工程下可以有许多包,每个包中可以有许多类. 类的修饰符分为 访问权限修饰符 和 ...
- java中的静态变量---static
用static修饰符修饰的数据成员,并不是属于那个对象的,而是属于类.静态数据成员在定义的时候已经分配了内存,而此时对象还没有建立好. 当然它也是被保存到类的方法中的,而不是对象内存中,大家都是可以访 ...
- java 类的静态变量
主要是记录一个奇葩的现象,java类中的静态变量,不仅可以通过类名称直接调用,而且还可以通过类的实力对象调用,java是不存在静态类的,如果非要用静态的类那就是内部类. 类中的静态变量是存储在JVM方 ...
随机推荐
- spring boot 集群 + Nginx --- 心得
1.前言 已经掌握了spring cloud 得使用 ,但这是在内部网络做业务 ,现在需要 在外部网络 访问内部网络 服务 ,引入了 服务端负载均衡 Nginx , Nginx 根据预定的策略 ,将请 ...
- spring cloud --- config 从git 获取文件【 可能是yml或 properties】遇到有相同字段的取值规则
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 昨天做了 spring cloud config 配置中心 获取存在gi ...
- Thrift框架-安装
1.前言 今天接触了使用 PRC[远程过程调用协议]的Thrift 框架 ,留下随笔心得,这是安装篇 2.下载 去apache官网下载Thrift脚本编译程序,window则下载一个exe文件,然后 ...
- uni-app开发的h5,使用微信授权登录(前置条件+具体代码)
原文 微信内嵌浏览器运行H5版时,可以调起微信登录 普通浏览器调起微信登陆是不开放的,只有个别开发者才有,比如京东 前置条件 在微信内嵌浏览器运行H5版时,调起微信登录,需要配置回调域名 (请注意,这 ...
- 《剑指offer》面试题28. 对称的二叉树
问题描述 请实现一个函数,用来判断一棵二叉树是不是对称的.如果一棵二叉树和它的镜像一样,那么它是对称的. 例如,二叉树 [1,2,2,3,4,4,3] 是对称的. 1 / \ 2 ...
- dubbo 实现简易分布式服务
dubbo 实现简易分布式服务 服务器需要搭建zookeeper环境 zookeeper端口2181 还需要有java环境 1.需求 某个电商系统,订单服务需要调用用户服务获取某个用户的所有地址: 我 ...
- Golang单元测试框架整理
目录 一.单元测试是什么 二.单元测试的意义 三.Golang单元测试框架 3.1 Golang内置testing包 3.1.1 简单的测试 3.1.2 Benchmark 基准测试 3.1.3 运行 ...
- [STM32F10x] 从零开始创建一个基于标准库的工程
硬件:STM32F103C8T6 平台:MDK-AMR V4.70 1.创建一个Keil uVision 的工程 要点:相同类型的源文件放在一起以便于管理 2.添加标准库源文件 3.添加几 ...
- [C# 学习]委托和线程
委托有点像C语言的函数指针,简单总结一下如何使用委托. 1. 声明一个委托 public delegate void LabelSetEventHandler(Label la, string str ...
- 【刷题-LeetCode】204. Count Primes
Count Primes Count the number of prime numbers less than a non-negative number, *n*. Example: Input: ...