第三代半导体 linux XShell UEditor 控制跳转 主从复制 spring junit concurrency eking文件 sas seo Notify.js Momentjs Movejs react视频教程 php零基础入门视频 pmp视频教程下载 php抽奖源码 android常用布局 ceb转换成pdf在线转换 mysql查询结果拼接 html下拉框默认选中 matlab网页版 linux查询文件内容 python输出中文 python的lambda函数 python零基础 java基本类型 java字符串查找 java对象和类 java语言代码大全 java获取数据类型 java如何编写接口 java当前日期 java接口调用 打马赛克的软件 高等数学同济第七版 millenium 手机模拟器下载
当前位置: 首页 > 学习教程  > 编程语言

Java 静态细节笔记

2020/8/11 20:18:28 文章标签:

Java面向对象之静态

static 静态

1. static:静态,凡是static修饰的都称为 静态。
2. 可以修饰方法	修饰成员变量。

在这里插入图片描述

内存图结论:
	静态成员,实例共享。(***)
	非静态成员来说,只能修改自身的非静态成员,而静态成员,每个属于这个类的对象都能修改。
	非静态成员属性的位置在堆中,静态成员属性的位置在方法区的静态区中。

静态成员的特点

1. 用static修饰的成员,由于被所有的实例共享,也称为类成员。
	类属性:由static修饰的属性
	类方法:由static修饰的方法
2. 调用方法:
	类名.成员
	类名.属性名词
	类名.方法名(参数)
3. static修饰的成员随着类的加载而加载,仅加载一次。

静态成员与非静态成员之间的相互访问

1. 静态成员访问非静态成员:
	由于静态成员随着类的加载而加载,此时不能保证非静态成员的存在,要么将非静态变成静态,要么创建对象
2. 静态访问静态:可以直接访问
3. 非静态访问非静态:可以直接访问
4. 非静态访问静态:可以直接访问
	总结:
		同级可以互相访问,不同级,静态不能直接访问非静态。

静态的细节问题

1. 静态方法中不可以存在this关键字
2. 静态成员与非静态成员的区别:
	1》写法上:
  		① 静态成员变量加了static ,非静态成员变量没加。
	2》生命周期:
  		① 静态成员变量随着类的加载而存在。
  		② 非静态成员变量随着对象的存在而存在。
	3》内存的位置:
 		① 静态成员变量在方法区的静态区中
  		② 非静态成员变量在堆中的对象里。
	4》 调用:
  		① 静态成员变量又叫类变量,可以通过类名.变量名称。
  		② 非静态成员变量,只能通过对象.变量名称

本文链接: http://www.dtmao.cc/news_show_100325.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?