Java 面向对象 之 static 关键字
http://www.verejava.com/?id=16992774752140
/** 知识点: static 关键字 1. static 的使用 2. static 变量的内存分配 3. static 的使用限制 4. 主方法 main 的剖析 */ public class TestStatic { public static void main(String[] args) { //实例化一个用户 User user1 = new User("xiongmao"); User.count++; System.out.println("实例化用户总数 : " + User.count); //实例化第二个用户 User user2 = new User("tanglang"); User.count++; System.out.println("实例化用户总数 :" + User.count); } } class User { private String username;//用户名 public static int count;//计数器 public User(String username) { this.username = username; } } /** 总结 普通变量和static静态变量的区别 1. 普通变量是运行期动态赋的值 static 变量是在 编译期 就赋给了初始值 2. 普通变量必须通过实例对象引用访问 static 变量可以直接通过类名访问 3. 普通变量存在 堆和栈中 static 变量存在全局代码区中 是共享的 */
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java 面向对象 之 对象引用 this的引用
http://www.verejava.com/?id=16992770416239 /** 对象与对象, this的引用 题目:我把书借给朋友,朋友看完归还书 思路: 1. 从题目的名词找出对应的类 朋友(Friend) ,我(Person),书(Book) 2. 找出类与类之间的关系 书是属于我的 Book->Person 朋友是属于我的朋友 Friend->Person 但是必须经过我的同意才能成为我的朋友 3. 通过2就可以知道 a->b 就在 b中要添加一个a 的引用对象 4. 从题目的动词 抽象出 方法 借给(lend) Book->Friend */ public class Refenrence1 { public static void main(String[] args) { //实例化我的对象 Person p = new Person(); p.setName("胡杨"); //实例化一本java编程书籍,并添加到我里面 p.setBook(new Book("Java编程书籍")); //打印我拥有的书籍名称 System.out.p...
- 下一篇
java源码-AtomicBoolean
开篇 AtomicBoolean位于java.util.concurrent.atomic包下,是java提供给的可以保证数据的原子性操作的一个类。 Atomicxxxx系列主要核心在于Unsafe这个类的运用保证线程安全,而Unsafe这个类应该是通过JNI调用的底层实现。 关于java集合的源码阅读暂时告一段落,开始开启JUC包下相关的源码分析,欢迎关注。 AtomicBoolean类构造器 AtomicBoolean的构造器分为有参和无参两种: 参数为boolean initialValue的构造函数内部会将boolean转为int类型初始化value 无参数的构造函数默认初始化value为0 AtomicBoolean的关键逻辑在于static代码快中通过unsafe接口初始化value的内存地址,后续直接通过内存地址进行操作。 public class AtomicBoolean implements java.io.Serializable { private static final long serialVersionUID = 465467146979455...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果