一、设计模式之单例模式

一、设计模式之单例模式

1.概念理解

在一个类中,有若干个方法和属性以及该类的构造方法,这些方法可以设置访问权限,一般都是使用public公开这些方法和属性的访问权限,如果是一些方法或属性不想要让其他人访问,因此一般会提高访问权限,使用private、protect,但是如果使用这些访问权限,就又会造成这个类无法实例化,因此,单例模式出场了,单例模式就是将一个类中的方法或属性私有化保护起来以使其他人无法实例化该类,但又为了能够使用方法和属性允许被调用,所以在类中加入这个类的静态的方法。

2.案例分析

public class Animal //Animal类

{

private string name;//私有化的变量

private string age { get ; set ;}//私有化的属性

private static Animalanimal;//声明静态私有化的Animal类animal对象,用于在该类的静态方法中调用其它方法

privateAnimal()//私有化无参的构造方法

{

}

private Animal(stringname)//私有化有参构造方法

{

this.name=name;

}

public static Animal Create()//静态当前Animal类的Create方法,因为是静态方法,所以该方法内可以调用该类的属性和变量

{

if(animal == null)

{

animal = newAnimal("动物");//如果animal为空,便实例化该方法并给name赋值

Console.WriteLine(animal.age);//输出animal的age属性

}

return animal;

}

};

class Program

{

static void Main(string args[])

{

Animal animal =Animal.Create();//在主函数中成功调用了Animal类中的静态方法

}

}

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

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,786评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,080评论 19 139
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,923评论 1 10
  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,272评论 0 2
  • 初见,你好似片片落叶,在我平静如水 孤独已久的心中泛起丝丝涟漪…… 一个不经意的瞬间,我认定自己爱上了你,从此,便...
    冯大痣阅读 425评论 6 4