• 面向对象 静态篇


    静态 可以修饰类 也可以修饰类的成员(属性和方法)
    static (静态)
    静态是在堆内存中创建一块存储区域,将相同的属性放在同一个区域里
    非静态:
    注意:
    1.非静态的成员属性对象必须通过一个new 出来的对象才能访问
    2.非静态的属性对象每个各持一份

    静态的属性在所有对象创建之前就在内存中存在了
    静态的属性不能通过对象访问 已经 不再属于具体的某个对象而是属于所有的对象,属于类的类名、属性

    类名.属性
    使用场合:当某个属性不属于某一个对象
    静态的方法:
    静态的方法不能通过对象调用 基于类来调用
    静态方法不能访问非静态方法
    而在非静态的是可以访问静态的成员
    工具方法适合做静态
    静态类不能被实例化
    一旦创建了静态类,类中的属性和方法必须是静态的。而没有加静态,则可以写非静态和静态的混合。

    设计模式:
    单例模式:
    只能允许一个控制所有的对象,类似管理员或者导演的角色。
    步骤:
    1.构造方法私有化
    2.提供一个静态的本类的一个字段 属性
    3.提供一个公开的静态方法返回创建对象(在方法里通过一定的逻辑来控制)
    例子:
    public class Class2
    {

    private static Class2 dx; //创建一个私有化单例引用
    public static Class2 ff() //创建一个公开的方法 并且在堆内存中建立一块静态的存储区域。
    {
    if (dx == null)
    {
    dx = new Class2(); // 创建一个新的dx引用。

    }
    return dx; //并返回一个dx引用,返回的引用指向同一个堆中的地址,原有的引用销毁。


    }

    public List<int> list { get; set; }
    private Class2()
    { //在class2创建出来的时候初始化一个list 泛型集合并且指向这个类的集合
    list = new List<int>();

    }

    }
    }
    注:
    通过单例模式设计的对象无论怎么创建都是一个对象,且都只访问这个对象的值。

     

  • 相关阅读:
    hibernate>悲观锁和乐观锁 小强斋
    hibernate>查询语言hql 小强斋
    hibernate>查询语言hql 小强斋
    hibernate>Collection映射 小强斋
    【java&&jni】jni入门篇
    【C++ Primer】第十三章 类继承
    【android&&jni&&NDk】详细介绍每一步,让你轻松掌握android JNI NDk
    【android】错误集锦及解决办法
    【Android】入门级连接网络示例: 网页浏览和播放网络MP3
    【python】入门第一篇
  • 原文地址:https://www.cnblogs.com/liyiyong/p/5102839.html
Copyright © 2020-2023  润新知