成员与静态

成员变量:它是对象的属性,存放在堆中与对象共存亡。调用时直接对象.属性。

静态变量:它存放在静态方法区中与类共存亡,只能创建一个,调用时可以对象.属性也可以类.属性。

有人想问,为什么要搞static这个东东?当你的一个属性相同时,你给他赋值一次,便可以重复调用。他就在那里不离不弃等你调用。

静态方法:它又有什么作用呢?你调用方法时得创建对象吧,通过对象调用方法,而用static修饰的方法可以直接用类名调用,因为static与类相关。

静态方法不能访问成员变量,因为静态方法与类相关,类加载时,对象不一定创建,所以在静态方法中不能出现this ,super。
成员方法可以访问静态方法,因为对象创建时,类已经加载了。
1,静态变量演示:

class Student {
    int age;
    static String country;

    public static void sleep() {
        System.out.println("学生睡觉");
    }
}

class Demo3 {
    public static void main(String[] args) {
        Student s = new Student();
        Student s1=new Student();
        Student s2=new Student();
        System.out.println(s.age = 10);
        Student.sleep();
        s.country="中国";
        System.out.println(s.country);
        System.out.println(s1.country);
        System.out.println(s2.country);
    }
}

代码快:

静态代码块:与类相关,只运行一次,在类加载的时候运行,它可以初始化静态变量,之前你还得创建一个对象来调用它,还得用this给它初始化,好麻烦的用一个静态变量。
构造代码快:与对象相关,对象创建几次那么他就运行几次。
局部代码块:在方法中的代码块。控制方法的生命周期。

class Student {
    int age;
    static String country;
    {
        System.out.println("学生需要学习");
    }
    static {
        country = "中国";
        System.out.println("......学生需要学习");
    }

}

class Demo3 {
    public static void main(String[] args) {
        Student s = new Student();
        Student s1 = new Student();
        Student s2 = new Student();
        System.out.println(Student.country);

    }
}

学了这么多东西,它们在内存中运行的顺序是什么?

类的加载--->静态变量初始化--->静态代码---->创建对象--->成员变量初始化--->构造代码块--->构造方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,785评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,703评论 0 11
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,382评论 11 349
  • 今年过年不回家,想一想其实也是不错的经历。 年,我的印象里,过年总是有些提心吊胆的,我觉得从我有记忆开始,过年的那...
    abigsmile阅读 139评论 0 0