Static简介
1、static称为静态修饰符,它可以修饰类中得成员。被static修饰的成员被称为静态成员,也成为类成员,而不用static修饰的成员称为实例成员。

2、当 Voluem volu1 = new Volume(); (在java中)
Voluem volu2 = new Volume();
就是产生了两个新的对象volu1和volu2,这两个对象都各自拥有自己的成员存储空间,而不与其他对象共享。
所创建的对象均由各自的存储空间来保存自己的值,而不与其他对象共享。这些成员变量(例如radius)各自相互独立,且存在于不同的内存之中。具有此特性的成员变量,java中称为实例变量(instance variable)
3、用static修饰的成员变量称为“静态变量”,静态变量也称为类变量。静态变量隶属于类的变量,而不属于任何一个类的具体对象。也就是说,对于类的任何一个具体对象而言,静态变量是个公共的存储单元,不保存在某个对象实例的内存空间中,而是保存在类的内存空间中得公共存储单元中。或者说,对于类的任何一个具体对象而言,静态变量是一个公共的存储单元,任何一个类的对象访问它的时候,去的都是一个相同的数值。同样,任何一个类的对象去修改它时,也都是对同一个内存单元进行操作。
4、它的引用方式:不需要实例化就可以直接用类去调用。也可以通过实例对象调用。
5、若类中含有静态变量,则静态变量必须独立于方法之外,就像其他高级语言在声明全局变量时必须在函数之外声明一样。
6、若对于静态方法,由于静态方法是属于整个类的,所以它不能操纵和处理属于某个对象的成员,而只能处理属于整个类的成员,即static方法只能访问static成员变量或者调用static成员方法,或者说在静态方法中不能访问实例变量或者实例方法。
7、在静态方法中也不能使用this或者super。因为this代表调用该方法的对象,但是现在静态方法既然不需要对象来调用,this也自然不应存在于静态方法内部。
8、对于静态方法,调用时与静态变量差不多,可以用类名直接调用,也可以用某一个具体的对象名来调用。
总之,对于加上static修饰符的成员或者方法,他们直接就可以使用类名调用而且不用实例化类之后再调用,而且一个地方修改了static修饰的成员,那么这个成员在所有地方的调用结果也都将改变。
Static简介的更多相关文章
- Objective-C 实用关键字详解1「面试、工作」看我就 🐒 了 ^_^.
在写项目 或 阅读别人的代码(一些优秀的源码)中,总能发现一些常见的关键字,随着编程经验的积累大部分还是知道是什么意思 的. 相信很多开发者跟我当初一样,只是基本的常用关键字定义属性会使用,但在关键字 ...
- Java 复习整理day05
1 package com.it.demo01_oop; 2 3 import java.util.Arrays; 4 5 /* 6 案例: 演示面向过程和面向对象代码的区别 7 8 面向过程编程思想 ...
- Java — 面向对象
目录 一.类和对象 二.方法 三.封装 四.继承 五.多态 六.final 七.static 八.抽象类 九.接口 十.内部类 一.类和对象 简介:类是对事物的一种描述,对象则为具体存在的事物. 类的 ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- const,static,extern简介
一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 编译时刻:宏是预编译(编译之前处理),const是编译阶段. 编 ...
- const,static,extern简介(重要)
一.const与宏的区别(面试题): const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 编译时刻:宏是预编译(编译之前处理),const是编译 ...
- static加载顺序简介
1.先执行父类的静态代码块和静态变量初始化,并且静态代码块和静态变量的执行顺序只跟代码中出现的顺序有关. 2.执行子类的静态代码块和静态变量初始化. 3.执行父类的实例变量初始化 4.执行父类的构造函 ...
- JAVA学习笔记--简介几个常见关键字static、final、this、super
一.static static(静态的),可以放在类.方法.字段之前. 通常,当创建类时,就是在描述那个类的外观与行为.除非用 new 创建那个类的对象,否则,实际上并未获得任何对象.执行 new 来 ...
- java中,静态代码块static的简单简介
直接上代码,更直观,包括一些解释: /** * 类初始化时,首先加载静态代码块, * 注意:所有静态代码块都会在方法之前执行,不管放置的位置:但是静态代码块按照顺序执行 * 再次执行调用的方法 */ ...
随机推荐
- 从零开始学 Web 之 移动Web(一)屏幕相关基本知识,调试,视口,屏幕适配
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 在centos上使用yum安装rabbitmq-server
rabbitmq及其依赖环境 rabbitmq安装之前需要安装socat,否则直接安装rabbitmq可能会报错 如果没有找到,则先安装epel源 yum -y install epel-releas ...
- httpd配置文件httpd.conf规则说明和一些基本指令
apache httpd系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 本文主要介绍的是httpd的配置文件,包括一些最基本的指令.配置规 ...
- Python知识梳理
这是个人学习笔记,非教程,内容会有些混乱 极简教程 数据类型 我们可以使用type()函数类获取对象的类型,Python3中内置数据类型包括:None,int,float,complex,st ...
- Java 多态 ——一个案例 彻底搞懂它
最近,发现基础真的hin重要.比如,Java中多态的特性,在学习中就是很难懂,比较抽象的概念.学的时候就犯糊涂,但日后会发现,基础在日常工作的理解中占有重要的角色. 下面,我将用一个代码实例,回忆和巩 ...
- ELK日志分析平台系统windows环境搭建和基本使用
ELK(ElasticSearch, Logstash, Kibana),三者组合在一起就可以搭建实时的日志分析平台啦! Logstash主要用来收集.过滤日志信息并将其存储,所以主要用来提供信息. ...
- 乐字节-Java8新特性之Date API
上一篇文章,小乐给大家带来了Java8新特性之Optional,接下来本文将会给大家介绍Java8新特性之Date API 前言: Java 8通过发布新的Date-Time API来进一步加强对日期 ...
- Best way to learn android and java?
Question: I have been getting my feet wet with android sdk, eclipse, and other various beginner step ...
- Raspberrypi 3B+ 安装 php+sqlite
按照网上的命令都为安装php5-fpm 和 php5-sqlite, 但是发现无法找到软件,可能是系统版本比较高的缘故,原来的版本已经不支持了. 经过努力华找到如下安装方法 sudo apt-get ...
- php获取指定月份月初和月末的时间戳
获取指定月份的开始时间戳和结束时间戳,只需传入年月即可(2018-01,2018-1两种格式都可以) $data['sel_time'] = '2018-11'; $data['begin_time' ...