zoukankan      html  css  js  c++  java
  • 类属性和类方法

    当一个属性、方法被static修饰的时候,就叫做类属性、类方法,又叫做静态属性、静态方法 。
    没有被static修饰的属性,就叫对象属性、对象方法,又叫实例属性、实例方法和非静态属性、非静态方法。

      当一个属性被声明成类属性,那么所有的对象,都共享一个值,所有对象都可以修改这个值,一经修改前面的值将会被丢弃。
      而对象属性,每个对象的对象属性的值都互不影响,修改一个对象的对象属性,另一个对象的对象属性不变。

    访问类属性有两种方式,访问即修改和获取。
      1. 对象.类属性/类方法

      2. 类.类属性/类方法

      访问一个对象方法,必须建立在有一个对象的前提的基础上 。
      访问类方法,不需要对象的存在,直接就访问。

    什么时候使用对象属性、对象方法,类属性、类方法?

      如果一个属性每个对象都不同,例如 :name,就是用对象属性。

      如果一个属性每个对象都共用,例如 :head,每个人都有四肢和头部,就用类属性。

      如果一个方法内,调用了对象属性,就使用对象方法;反之没有调用对象属性,就可以考虑使用类方法。

    属性初始化:

    对象属性初始化

      1.声明该属性的时候初始化

      2.在构造方法中初始化

      3.初始化块:

      public class Hero{

        int    hp;

        {

          hp  =  500;

        }

      }

    类属性初始化

      1.声明该属性时初始化

      2.静态初始化块

      public class Hero{

        static{

          hp  =  500;

        }

      }

    属性初始化的顺序为

      1、声明变量的时候的初始化

      2、初始化块

      3、构造函数初始化

      所以建立一个新的对象的时候,其属性最终应该是构造函数中的赋给的值

  • 相关阅读:
    关于 HTML5 的 11 个让人难以接受的事实
    【转】zookeeper 的监控工具
    arm+linux 裸机环境搭建之安装工具篇(eclipse)
    Unity 利用NGUI2.6.3做技能冷却的CD效果
    spring boot打包文件后,报错No such file or directory
    机器学习实战读书笔记(3)朴素贝叶斯
    机器学习实战读书笔记(2)决策树
    机器学习实战读书笔记(1)
    No operations allowed after connection closed--转
    简单理解Socket
  • 原文地址:https://www.cnblogs.com/snzd9958/p/9363228.html
Copyright © 2011-2022 走看看