黑马程序员技术交流社区

标题: static静态方法 [打印本页]

作者: 365708064    时间: 2016-3-8 22:04
标题: static静态方法
static关键字:
                1、怎么用,静态修饰符。
                        可以修饰成员变量,也可以修饰成员方法
                        private static int age
                2、静态和非静态的区别
                        1、在内存中的位置不同(方法区里面)
                                静态成员变量,在方法区中的静态区
                                非静态的成员变量,在方法区中的非静态区
                        2、非静态成员变量,有多少个对象,就存多少份,每个对象中都有一份,而且可以互不相同
                                静态成员变量,多个对象共享一份
                静态的特点:
                        1、随着类的加载而加载
                        2、优先于对象而存在
                        3、被类的所有对象所共享
                        4、可以通过类名.变量名来调用
                静态的注意事项:
                        1、this在静态方法中不能出现
                        2、访问:
                                静态方法只能访问静态
                                非静态方法,既能访问静态,也能访问非静态
                静态变量和成员变量不同
                        1、所属不同
                                静态变量属于类
                                成员变量属于对象
                        2、内存中的位置不同
                                静态变量存在方法区的静态区
                                成员变量存在堆内存中
                        3、生命周期不同
                                静态变量随着类的加载而加载,随着类的消亡而消失
                                        Person p = new Person();
                                成员变量随着对象的创建而存在,随着对象的消失而消失
                        4、调用不同
                                静态变量既可以通过对象名来调用,也可以通过类名来调用
                                成员变量只能通过对象名来调用




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2