类、变量、封装

  成员变量 局部变量
类中方法外 方法内或者方法声明上
内存 堆内存 栈内存
生命周期 随着对象的存在而存在,随着对象的消失而消失 随着方法的调用而存在,随着方法的调用完毕而消失
默认值

有默认值安全

没有默认值,必须先定义,赋值,才能使用

匿名对象

        没有名字的对象;是对象的一种简化表示形式(new 对象())this

        两种使用状况spa

                 对象调用方法仅仅一次的时候对象

                 做为实际参数传递生命周期

封装

        隐藏对象的属性和实现细节,仅对外提供公共访问方式内存

        优势 隐藏实现细节,提供公共的访问方式ci

                  提升了代码的复用性string

                 提升安全性table

        原则class

                 将不须要对外提供的内容都隐藏起来

                 把属性隐藏,提供公共方法对其访问

构造方法

        给对象的数据进行初始化

        格式: 方法名与类名相同;没有返回值类型,连void都没有;修饰符可为(pubic、protected、默认、private)

        注意事项: 不提供构造方法,系统会给出默认的无参构造方法

                           提供构造方法,系统将再也不提供默认的无参构造方法

                           构造方法能够重载

类的初始化过程

        Demo d = new Demo();

        1 加载Demo.class文件进内存

        2 在栈内存为d开辟空间

        3 在堆内存为Demo对象开辟空间

        4 对Dmeo的成员变量进行默认初始化

        5 对Demo的成员变量进行显示初始化

        6 经过构造方法对成员变量进行赋值

        7 初始化完毕,把对象地址赋值给d变量

 

变量何时定义为成员变量

        若是这个变量是用来描述这个类的信息,该变量就应该定义为成员变量

变量定义的范围

        越小越好,由于能及时的被回收

Static关键字

        1 能够修饰成员变量和成员方法

        2 随着类的加载而加载

        3 优先于对象存在

        4 被类的全部对象共享

        5 能够经过类名调用

        6 存在于方法区的静态区

注意事项

        在静态方法中时没有this关键字的

        静态方法只能访问静态的成员变量和静态的成员方法

  静态变量 成员变量
所属 属于类,也称为类变量,对象的共享数据 属于对象,也称为实例变量(对象变量),对象的特有数据
内存 方法区的静态区
生命周期 随着类的加载而加载,随着类的消失而消失 随着对象的建立而存在,随着对象的消失而消失
调用 能够经过类名调用,也能够经过对象调用

只能经过对象名调用

 

public static void main(Sting[] args){}

        public被JVM调用,访问权限足够大

        static被JVM调用,不用建立对象,直接类名访问

        void 被JVM调用,不须要给JVM返回值

        main 一个通用的名称,不是关键字,可是被JVM识别

        string[] args 之前用于接收键盘录入的数据

  本类 同包 同包 不一样包 不一样包
    子类 其它类 子类 其它类
private        
默认    
protected  
public
相关文章
相关标签/搜索