zoukankan      html  css  js  c++  java
  • Javase部分回顾(static (静态修饰符),修饰方法,单利的设计模式, 封装)

    static (静态修饰符)
        
        1.修饰成员变量
            静态变量的访问方式:
                方式一 : 通过对象访问。
                    对象.变量名
                方式二: 同过类名
                    类.变量名
            
            静态变量的使用注意点 :
                局部变量不允许被static修饰。
                用static修饰的变量式放在共享区的,所以千万不要为了方便就将所有的静态变量都定义为成员变量。

            静态变量和非静态变量的区别:
                1.作用上来看 :
                    1.静态变量使用来共享的,所有的对象都可以访问到。
                    2.非静态变量就是用来描述同一类事物的公共属性。
                2.数量和存储位置:
                    1.静态变量存在方法区(数据共享区),并且只有一份数据。
                    2.非静态变量存在堆区中,对象有n个,数据就有n个。
                3.生命周期:
                    1.静态变量是在随着类文件的加而加载,随着类文件消失而消失。
                    2.非静态变量是随着对象创建而创建,随着对象的消失而消失。

        2.修饰方法
            
            静态变量的修饰的方法也有两种访问方式: 和OC中的类方法有点类似
                
                1.对象来访问:
                    对象.方法名();

                2.类来访问:
                    类.方法名();

            注意事项:
                1.静态方法访问静态的成员变量,不能访问非静态的成员变量。
                    原因: 静态方法被访问了,非静态的成员变量还没有被创建。
                2.静态方法是可以直接访问静态方法,不能够访问非静态的方法。
                    原因:同上。
                3.静态方法中不允许出现this和super关键字。






        ---------------------main 主方法为什么这么定义--------------------
            public :让jvm能够在任何情况下都可以调用。
            void   : jvm拿到返回值没有意义。
            static : jvm不知道该创建什么样的对象出来,所以干脆就不创建了。
            main   :不是关键字。 只是约定将这个作为入口方法的名。
            args   : 接收程序运行是传递的参数。





        --------------------单利的设计模式-----------------------

        1.饿汉单利设计模式:
            步骤 :
                1.定义一个私有的静态成员变量来引用对象(私有的静态对象),设置对象唯一。
                2.私有化构造方法,防止new对象。
                3.创建一个公开的静态方法,返回上面的对象。

        2.懒汉单利设计模式 : 要用的才创建对象        
                1.定义一个私有的静态成员变量,不要赋值。
                2.私有化构造方法,防止new对象。
                3.创建一个公开的静态方法,判断是否存在对象,如果不存在就创建一个,如果存在就直接返回。






        ---------------------面向对象三大特征之一 : 封装--------------------------
            封装的步骤:
                1.用private来修饰成员变量。
                2.设置一个公共的方法来设置或者访问私有的成员变量。
                    命名规范:
                        set属性名();
                        get属性名();
            封装不一定需要提供set和get方法, 根据需求来定的。
            规范 :在实际开发中实体类的成员变量,都需要封装起来。

            封装用处:
                框架,工具类。
            封装的好处:
                1.提高了数据的安全性
                2.操做简单
                3.隐藏方法的实现。



  • 相关阅读:
    SQL入门语句之SELECT和WHERE
    SQL入门语句之INSERT、UPDATE和DELETE
    SQL入门语句之CREATE
    iOS高效调试
    兼容iOS 10 资料整理笔记
    iOS中常见的一些宏
    Extjs 日期的处理;字符串转日期;分隔获得小时;天数差;小时差;
    Ext.MessageBox.show更改按钮中的名称
    Extjs日期/可编辑表格grid/显示不正确————解决方案
    ExtJs Grid行显示不同颜色2
  • 原文地址:https://www.cnblogs.com/yuguangblog/p/6134816.html
Copyright © 2011-2022 走看看