static关键字修饰属性
static 静态的,可以修饰属性,方法,代码块(或初始化块) , 内部内
非static修饰的属性(实例变量):各个对象各自拥有一套各自的副本
static修饰属性(l类变量):
1.由类创建的所有的对象,都共用一个属性
2.当其中一个对象对此属性进行修改,会导致其他对象对此属性的一个调用。
3.类变量随着类的加载而加载的。而且独一份
4.静态的变量可以直接通过 “类.类变量” 的形式来调用
5. 类变量的加载要早于对象,所以当有对象以后, 可以 "对象.类变量" 的使用,但是 "类.实例变量" 是不行的
6.类变量存在于静态域
static修饰方法(类方法):
1.随着类的加载而加载,在内存中也是独一份
2. 可以直接通过 "类.类方法" 的方式来调用
3.内部可以调用静态的属性或者静态的方法,而不能调用非静态的,反之非静态的是可以调用静态的
4.静态的方法内不能有 this 或者 super 关键字
注意:静态的结构(static的属性,方法,代码块,内部类)的生命周期要早于非静态的结构,同时回收也要晚于非静态的结构。生命周期比较长
TestSportsMan:
package com.aff.wrapper; public class TestSportsMan {
public static void main(String[] args) {
SportsMan s1 = new SportsMan("苗苗", 25);
SportsMan s2 = new SportsMan("芳芳", 26);
s1.name = "文静";
s1.nation = "China";
System.out.println(s1);
System.out.println(s2);
System.out.println(SportsMan.nation);// 类变量随着类的加载而加载的。而且独一份
// SportsMan.show1();//无法直接调用
SportsMan.show2();
}
} class SportsMan {
// 实例变量
String name;
int age;
// 类变量
static String nation; public SportsMan(String name, int age) {
super();
this.name = name;
this.age = age;
} @Override
public String toString() {
return "SportsMan [name=" + name + ", age=" + age + ", nation=" + nation + "]";
} public void show1() {
System.out.println("我喜欢芳芳");
} public static void show2() {
System.out.println("我喜欢苗苗");
}
} 输出结果:
SportsMan [name=文静, age=25, nation=China]
SportsMan [name=芳芳, age=26, nation=China]
China
我喜欢苗苗
static关键字修饰属性的更多相关文章
- 使用static关键字修饰一个属性
//使用static关键字修饰一个属性 //static作用: //static:静态 //1.使用static关键字修饰一个属性,声明为static的变量本质就是一个全局变量; //2.静态变量或方 ...
- 静态static关键字概述和静态static关键字修饰成员变量
static关键字 概述 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属 于某个对象的.也就是说,既然属于类,就可以不靠创建对象来调用了 ...
- java中普通的顶级类是不能使用static关键字修饰的。只有内部类可以使用static修饰,也可以不使用staitc关键字修饰。
java中普通的顶级类是不能使用static关键字修饰的.只有内部类可以使用static修饰,也可以不使用staitc关键字修饰. java中的类可以是static吗?答案是可以.在java中我们可以 ...
- 静态static关键字修饰成员方法和静态static的内存图
当 static 修饰成员方法时,该方法称为类方法 .静态方法在声明中有 static ,建议使用类名来调用,而不需要 创建类的对象.调用方式非常简单 ~类方法:使用 static关键字修饰的成员方法 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_12_静态static关键字修饰成员变量
创建一个学生类 定义成员变量,无参构造,全参构造.成员变量的getter和setter 所在教室必须是一样的,定义所在教室 下面来创建两个学生 只给one的room赋值了.two的教室并没有赋值.都输 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_13_静态static关键字修饰成员方法
static关键字 用来修饰方法的情况 任何使用这个静态方法呢? 可以直接通过对象名称的方式进行调用. 更好的写法是通过类名称进行调用. 分别定义成员变量和静态变量 静态方法里面不能用this
- static 关键字 静态属性与方法 -> :: self $this 区别 可见性的关键字区别
1.声明类属性或方法为静态,就可以不实例化类而直接访问.静态属性不能通过一个类已实例化的对象来访问(但静态方法可以). 2.由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可 ...
- 用static关键字修饰类
Java里面static一般用来修饰成员变量或函数.但有一种特殊用法是用static修饰内部类,普通类是不允许声明为静态的,只有内部类才可以.被static修饰的内部类可以直接作为一个普通类来使用,而 ...
- static关键字修饰类
今天继续研究公司的新项目,据说是京东的架构,研究看了一番,果然很牛逼,大致是Maven+spingmvc+spring+mybatis+ehcache+velocity来搭建的,数据库用的是mysql ...
随机推荐
- Linux之进程管理工具supervisor
环境:CentOS 7官方文档:http://supervisord.org/ 安装 # yum install -y epel-release # yum install -y supervisor ...
- P1680 奇怪的分组(组合数+逆元)
传送门戳我 首先将n减去所有的Ci,于是是原问题转换为:n个相同的球放入m个不同盒子里,不能为空,求方案数. 根据插空法:n个球,放到m个箱子里去不能为空,也就是有m-1块板子放在n-1个空隙之间 那 ...
- P2762 太空飞行计划问题 网络流
题目描述 W 教授正在为国家航天中心计划一系列的太空飞行.每次太空飞行可进行一系列商业性实验而获取利润.现已确定了一个可供选择的实验集合E={E1,E2,…,Em},和进行这些实验需要使用的全部仪器的 ...
- Linux创建软硬链接和打包压缩、解压缩
软硬链接 ln = link make links between files 语法: 软链接 ln -s 源文件 链接名称 实例: ln -s HelloWord.java hw.lnk 给Hell ...
- 微软关于LINQ的101个例子
记录,备查. 101 LINQ Sqmples
- Azure AD(二)调用受Microsoft 标识平台保护的 ASP.NET Core Web API 上
一,引言 上一节讲到Azure AD的一些基础概念,以及Azure AD究竟可以用来做什么?本节就接着讲如何在我们的项目中集成Azure AD 包含我们的API资源(其实这里还可以在 SPA单页面应用 ...
- 构建自己的专用OpenCV----记录一次由applyColorMap()引发的探索
在编写实际项目的过程中,我需要实现绿色主题的"伪彩色"变换.在目前提供的模板中,只有summer最为接近,但是它的颜色太浅了,看上去不是很清晰.所以我结合ocean和summer两 ...
- GNU ARM 汇编基础
ARM GNU汇编基础 0 前言 全文补充提醒: 笔者在阅读ARM官方文档及查阅实际的u-boot源码中的汇编代码后,发现了一些不同于ARM官方文档中的汇编语法,查阅相关资料后,才发现主要由于汇编器的 ...
- 【poj 3261】Milk Patterns 后缀数组
Milk Patterns 题意 给出n个数字,以及一个k,求至少出现k次的最长子序列的长度 思路 和poj 1743思路差不多,二分长度,把后缀分成若干组,每组任意后缀公共前缀都>=当前二分的 ...
- [CodeForces 344C Rational Resistance]YY,证明
题意:给若干个阻值为1的电阻,要得到阻值为a/b的电阻最少需要多少个. 思路:令a=mb+n,则a/b=m+n/b=m+1/(b/n),令f(a,b)表示得到a/b的电阻的答案,由f(a,b)=f(b ...