首页 > 编程语言 > 详细

Java面向对象之关键字static 入门实例

时间:2018-04-15 23:47:55      阅读:260      评论:0      收藏:0      [点我收藏+]

 

一、基础概念

  静态关键字 static 是成员修饰符,直接用于修饰成员。

  (一)特点:

    1.被静态修饰的成果,可以直接被类名所调用。

    2.静态成员优先于对象存在。

    3.静态成员随着类的加载而加载。随着类的消失而消失。静态成员的生命周期很长。

  (二)注意事项:

    1.静态方法只能访问静态成员,不能访问非静态成员。

    2.静态方法中不能出现this或者super关键字。

    3.主函数是静态的。

  (三)什么时候用:

    1.成员变量:如果数据在所有对象中都是一样的。直接用静态修饰。

    2.成员函数:如果函数没有访问过对象中的属性数据,那么该函数就是静态的。

  (四)成员变量和静态变量的区别:

    1.名称:成员变量也叫实例变量。静态变量也叫类变量。

    2.内存存储:成员变量存储到堆内存的对象中。静态变量存储到方法区的静态区中。

    3.生命周期:成员变量随着对象的出现而出现,随着对象的消失而消失。静态变量随着类的加载而加载。随着类的消失而消失。

  (五)静态代码块:

    1.随着类的加载而执行,而且只执行一次。

    2.给类进行初始化。

    3.类不需要创建对象,但是需要初始化。这是将部分代码存储到静态代码块中。

二、实例代码  

class Person
{
    private String name;
    private int age;
    
    Person(String name,int age)
    {
        this.name = name;
        this.age = age;
    }
    public void show()
    {
        System.out.println("name="+name+",age"+age);
    }
    //既然sleep方法没有访问到对象中的属性,可以用static修饰该方法。(节约内存的使用)
    public static void sleep()
    {
        System.out.println("sleep......");
    }
    //静态代码块
    static
    {
        System.out.println("static......");
    }
}

class StaticDemo
{
    public static void main(String[] args)
    {
        Person p = new Person("xiangming",20);
        Person.sleep();//调用sleep方法,可以通过类名的方式访问。
        Person.sleep();//用类名调用的方法必须通过指定修饰符static来修饰
    }
}

三、代码运行

  技术分享图片

 

Java面向对象之关键字static 入门实例

原文:https://www.cnblogs.com/zhuxr/p/8850227.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!