java基础之类变量和类方法:

一、类变量(静态变量):
1.基本介绍:
类变量也叫静态变量、静态属性,是该类的所有对象共享的变量,任何一个该类的对象去访问它时,渠道的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量。
2.如何定义类变量:
定义语法:
访问修饰符 static 数据类型 变量名 ;【推荐方式】
static 访问修饰符 数据类型 变量名;
3.访问类变量:
类名.类变量名;【推荐方式】
对象.类变量名;
类变量是随着类的加载二创建,所以及时没有创建对象实例也可以访问;
4.特点:
会被当前类的所有实例对象使用。也可以通过类名直接访问。
3.存储机制:
static变量保存在Class实例的尾部,Class对象确实在堆中。
5.共识:
(1)static变量是同一个类中所有对象共享的;
(2)static类变量,在类加载的时候就生成了。
6.使用细节:
(1)什么时候需要使用类变量:当我们需要让某一个类的所有对象都共享一个变量时,就可以考虑使用类变量;
(2)类变量与实例变量(普通属性)的区别::类变量是该类的所有对象共享的,而实例变量是每个对象独享的;
(3)加上static成为类变量或静态变量,否则称为实例变量、普通变量、非静态变量;
(4)类变量可以通过 类名.类变量名 或者 对象.类变量名 来访问,推荐使用后者,且前提是需要满足访问修饰符的访问权限和范围。
(5)实例变量不能通过 类名.变量名 来访问;
(6)类变量在类加载的时候就初始化了,也就是说,及时没有创建对象,只要类加载了,就可以使用类变量了;
(7)类变量的生命周期是随类的加载开始,随着类消亡而销毁。
二、类方法(静态方法):
1.基本介绍:当方法使用了static修饰后,就变成了类方法(静态方法),静态方法就可以去访问静态属性。
访问修饰符 static 数据返回类型 方法名(){ }  //推荐
static 访问修饰符 数据返回类型 方法名 (){ }
2.调用:(满足访问修饰符规则)
对象名.方法名;
类名.方法名;
3.使用场景:
(1)当方法中不涉及到任何和对象相关的成员,则可以讲方法涉及成静态方法,提高开发效率;
(2)开发自己的工具类时,可以将方法做成静态方法,方便调用。
4.注意事项:
(1)类方法和普通方法都是随着类的加载,将结构信息存储在方法区;类方法中无this的参数,普通方法中隐含着this的参数。
(2)类方法可以通过类名调用,也可以通过对象名调用。
(3)普通方法和对象有关,需要通过对象名调用,比如对象名.方法名(参数),不能通过类名调用。
(4)类方法中,不允许使用和对象有关的关键字,比如this和super,普通方法(成员方法)可以;
(5)类方法(静态方法)中只能访问静态变量或静态方法。
(6)普通成员方法,既可以访问非静态变量(方法),也可以访问静态变量(方法)。
小结:静态方法,只能访问静态的成员,非静态的方法,可以访问静态成员和非静态成员(必须遵守访问权限)

每日金句分享:抱最大的希望,为最大的努力,做最坏的打算。

java基础之类变量和类方法:程序员成长之路相关推荐

  1. java项目怎样提高性能_Java程序员成长之路(如何提高Java程序性能?)

    1.尽量在合适的场合使用单例 使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面 第一,控制资源的使用,通过线程同步来控制资 ...

  2. 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》

    <菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...

  3. JAVA程序员成长之路的总结

    JAVA程序员成长之路的总结 看了篇推荐贴,JAVA程序员成长之路的总结,大致适用于各种初级JAVA程序员规划借鉴之用, 原文地址http://tieba.baidu.com/p/2017010306 ...

  4. 程序员成长之路(四)之有用的网址

    2019独角兽企业重金招聘Python工程师标准>>> 通过Java来测试JSON和Protocol Buffer的传输文件大小 http://www.jb51.net/articl ...

  5. 程序员成长之路--软件架构

    程序员成长之路--软件架构 一.想成为一个合格的架构师,你要知道软件架构是个什么概念,明白架构的定义: 1.软件架构是一个系统的草图. 2.软件架构描述的对象是直接构成系统的抽象组件. 3.各个组件之 ...

  6. JAVA基础语法笔记(黑马程序员系列)

    1. Java概述 1.1 Java语言发展史(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford Uni ...

  7. 一个JAVA程序员成长之路分享

    我搞JAVA也有些日子了, 因为我比较贪玩,上进心不那么强, 总是逼不得已为了高薪跳槽才去学习, 所以也没混成什么大牛, 但好在现在也已经成家立业, 小日子过的还算滋润, 起码顶得住一月近万元的吃喝拉 ...

  8. 一个JAVA程序员成长之路(转载)

    我搞JAVA也有些日子了, 因为我比较贪玩,上进心不那么强, 总是逼不得已为了高薪跳槽才去学习, 所以也没混成什么大牛, 但好在现在也已经成家立业, 小日子过的还算滋润, 起码顶得住一月近万元的吃喝拉 ...

  9. java字符串长度计算,论程序员成长的正确姿势

    第一篇Linux基础学习篇 目录 第零章﹑计算机概论关于电脑的硬件组成部分﹐其实你可以观察你的台式机来分析一下﹐依外观来说这家伙主要可分为三部分﹐分别是∶ 输入单元∶包括键盘﹑鼠标﹑读卡机﹑扫描仪﹑手 ...

最新文章

  1. 目前的Android恶意软件分类
  2. 为什么编码不同会出现乱码?
  3. SQL SERVER 子查询的用法
  4. springboot整合kafka和netty服务简单实例
  5. matlab在振动信号处理中的应用_Matlab面向对象程序设计及其在地球物理学中的应用(4)——类的属性
  6. git操作代码文件的颜色变化
  7. (转)在MAC上查找和设置$JAVA_HOME
  8. jcr多久更新一次_拼多多商品价格竞争力星级有什么用?多久更新一次?
  9. 开盘暴涨193.9%,市值1.39万亿港元!快手正式上市
  10. Ubuntu 配置Tomcat环境(转载)
  11. 本特利传感器330103-00-05-10-02-00
  12. 关于如何提取仙剑奇侠传4的模型
  13. 繁凡的对抗攻击论文精读(一)CVPR 2019 基于决策的高效人脸识别黑盒对抗攻击(清华朱军)
  14. 【网页保存为PDF】pdfkit神器网页自动保存PDF文件
  15. JAVA_OPTS 参数介绍 使用记录
  16. matlab表格数据合并同类项,Excel合并同一列中的同类项原来这么简单,赶紧收藏!...
  17. java ews_如何验证EWS Java API
  18. Android悬浮窗口-画中画功能
  19. 70.用Dnsmasq构建DNS服务器
  20. 计算机网络技术专业就业前景分析。

热门文章

  1. 淘宝天猫618预售活动时间是从几号什么时候开始2023天猫淘宝618预售定金能退吗?
  2. SQL Server还原数据库后如何同步登录名和用户名
  3. IE历史记录查询及删除工具IE History View使用浅析
  4. doT.js实现混合布局,判断,数组,函数使用,取模,数组嵌套
  5. 【杂谈】除了生成图像(造假),GAN如何给目标检测,图像分割,图像增强等问题打辅助?...
  6. macOS清除beta版本系统提示命令
  7. 中兴和思科的acl配置
  8. 小样本学习的k-way n-shot
  9. 用jointjs绘制微博关系图
  10. CAD编辑之创建表格、新建空白图纸以及创建和粘贴图块