static关键字的作用?

static关键字主要有两种作用:

第一,为特定数据类型或对象分配单一的存贮空间,而与创建对象的个数无关。第二,希望某个方法或属性与类而不是对象关联在一起,也就是说,
在不创建对象的情况下就可以通过类来直接调用方法或使用类的属性。具体而言,static在java中主要有四种使用情况:成员变量、成员方法、代码块及内部类。
(1)static成员变量

虽然java语言中没有全局的概念,但可以通过static关键字来达到全局的效果。java类提供了两种类型的变量:用static关键字修饰的静态变量和没有static关键字修饰的实例变量。静态变量
属于类,在内存中只有一个副本(所有实例都指向同一个内存地址)。只要静态变量所在的类被加载,这个静态类就会被分配空间,因此就可以被使用。对静态变量的引用有两种方式,分别为“类.静态变量”和“对象.静态变量”。

实例变量属于对象,只有对象被创建后,实例变量才会被分配空间,才能被使用,他在内存中存在多个副本,只能用“对象.静态变量”的方式来引用。

静态变量只有一个,被类所拥有,所有的对象都共享这个静态变量,而实例对象与具体对象有关。

(2) static成员方法
与变量类似,java类同时也提供了static方法与非static方法。static方法是类的方法,不需要创建对象就可以被使用,而非static方法是对象的方法,只有对象被创建出来后才可以被使用。

static 方法中不能使用this和super关键字,不能调用非static方法,只能访问所属类的静态成员变量和成员方法,因为当static方法被调用的时候,这个类的对象可能还没有被创建,即使已经被创建,
也无法确定调用哪个对象的方法。同理static方法也不能访问非static类型的变量。

static的一个很重要的的用途的是实现单例模式。单例模式的特点是该类只能有一个实例,为了实现这功能,必须隐藏类的构造方法,即把构造方法声明为private,并提供一个创建对象的方法。由于构造方法被声明为private,外界无法直接创建这个类型对象,只能通过该类提供的方法来获取类的对象



static是什么意思?c语言中static的用法?static关键字的作用是什么?相信很多人都会有这样的疑问,下面我们来总结一下static。
一:static是什么意思

static是一种计算机高级语言,我们经常在c++和java中看到,static经常以关键词和函数的形式出现,并且在其他高级语言中也是会出现static,当然在不同的语言下,作用也是不一样的。

二:static关键字的作用是什么

1.java中

在java中,我们想定义一个类成员,并且使用要独立于其他任何对象,在一般情况下,类成员必须要通过其他类的对象访问,很多时候我们可以不需要引进实例,就能被自己使用,只要在声明前面加上关键字,就可以创建一个成员,在其他类没有创建之前访问。我们可以通过引用静态变量。

static关键字的作用是什么

2.在C语言中

c语言中,static函数被分为两种函数,内部函数和外部函数,其中内部函数就称为静态函数,当一个程序有很多个源文件组成的时候,c语言就能根据其他源文件调用,就不能使用同一个程序去调用,只要我们在函数前面加一个关键字就可以了,如下:

static 函数类型 函数名(函数参数表){……}

static关键字的作用是什么

使用内部函数的好处有很多,针对不同的人编写不同的函数,不需要担心定义的函数和其他的函数名重复。外部函数如果发现没有出现关键词,就表示函数是外部函数。

以上就是static关键字的作用是什么的全部介绍,如果你想了解更多有关Java教程,请关注php中文网。

以上就是static关键字的作用是什么的详细内容,更多请关注php中文网其它相关

1、修饰函数的局部变量:

特点:有默认值0,只执行一次,运行一开始就开辟了内存,内存放在全局

2、修饰全局函数和全局变量:

特点:只能在本源文件使用

3、修饰类里面的成员变量:

特点:和1差不多,定义多个static y,但只有一个y,不进入类的大小计算,不依赖于类对象的存在而存在(可直接调用,要进行外置声明)

4、修饰类的成员函数:

特点:f():括号里无this指针,只能调用他的本类静态函数和他的静态变量,即是用static修饰过的不依赖于类对象的存在而存在(可不进行外置声明,直接调用)

1、修饰函数的局部变量
2、修饰全局函数和全局变量
3、修饰类里面的成员变量
4、修饰类的成员函数

  • C璇█涓static鏄仛浠涔堢敤鐨?
    绛旓細鏈変袱绉嶇敤娉曪細1銆static淇グ灞閮ㄥ彉閲忥紝鎴愪负涓涓眬閮ㄩ潤鎬佸彉閲忋俿tatic淇グ灞閮ㄥ彉閲(闈欐佸眬閮ㄥ彉閲)涓庢櫘閫氬眬閮ㄥ彉閲忕浉姣旓紝瀹冪殑浼樺娍鍦ㄤ簬锛氣憼闈欐佸眬閮ㄥ彉閲浣滅敤鍩熶笌杩炴帴灞炴т笌鏅氬眬閮ㄥ彉閲忎竴鏍凤紱鈶″瓨鍌ㄧ被锛氶潤鎬佸眬閮ㄥ彉閲忓垎閰嶅湪data/bss娈碉紝鏅氬眬閮ㄥ彉閲忓湪鏍堜笂锛涒憿鐢熷懡鍛ㄦ湡锛氬洜涓哄瓨鍌ㄧ被鐨勪笉鍚岋紝闈欐佸眬閮ㄥ彉閲忕殑鐢熷懡鍛ㄦ湡...
  • 鍏抽敭瀛梥tatic鐨勪綔鐢鏄粈涔?
    绛旓細闈欐佹柟娉曞彲浠ョ洿鎺ラ氳繃绫诲悕璋冪敤,浠讳綍鐨勫疄渚嬩篃閮藉彲浠ヨ皟鐢,鍥犳闈欐佹柟娉曚腑涓嶈兘鐢╰his鍜宻uper鍏抽敭瀛,涓嶈兘鐩存帴璁块棶鎵灞炵被鐨勫疄渚嬪彉閲忓拰瀹炰緥鏂规硶(灏辨槸涓嶅甫static鐨鎴愬憳鍙橀噺鍜屾垚鍛樻垚鍛樻柟娉),鍙兘璁块棶鎵灞炵被鐨勯潤鎬佹垚鍛樺彉閲忓拰鎴愬憳鏂规硶銆傚洜涓哄疄渚嬫垚鍛樹笌鐗瑰畾鐨勫璞″叧鑱!杩欎釜闇瑕佸幓鐞嗚В,鎯虫槑鐧藉叾涓殑閬撶悊,涓嶆槸璁板繂!!!鍥犱负static鏂规硶...
  • c璇█涓璫onst銆static鍏抽敭瀛楃殑鐢ㄦ硶?
    绛旓細const鏄寚甯告暟锛岃繖绉嶆暟瀛樻斁鍦╮om涓紝涔熷氨鏄‖鐩橀噷锛屽彧鏈変娇鐢ㄧ殑鏃跺欐墠璇诲彇鍒板唴瀛樸static绫诲瀷鐨勬槸灞閮ㄩ潤鎬佹暟鎹紝棣栧厛浠栬偗瀹氭槸灞閮ㄥ彉閲忥紝浣嗘槸浠栫殑鐢熷瓨鏈熸槸鍏ㄥ眬鐨勩俢onst鏁颁笉鑳借淇敼锛屼篃涓嶈兘鏄眬閮ㄥ彉閲忋俿tatic涓鑸敤浜庡眬閮ㄥ彉閲忥紝浣嗘槸浠栧彲浠ヨ淇敼锛屽苟涓旈鍑哄紩鐢ㄤ粬鐨勫嚱鏁颁綋鍚庡彉閲忎緷鏃у瓨鍦紝鐩村埌涓嬩竴娆″紩鐢ㄦ椂...
  • C#涓static鍏抽敭瀛楃殑浣滅敤
    绛旓細static涓夌鐢ㄦ硶锛1.鐢ㄤ簬鍙橀噺鍓嶏紝琛ㄧず姣忔閲嶆柊浣跨敤璇ュ彉閲忔墍鍦ㄦ柟娉曘佺被鎴栬嚜瀹氫箟绫绘椂锛屽彉閲忕殑鍊间负绋嬪簭杩欐杩愯鏈鍚庝竴娆′负鍙橀噺璧嬪兼椂鐨勫硷紝杩欎釜鏂规硶绉颁负闈欐佸嚱鏁帮細private void s(){static int a=1;a++;}鏂规硶绗竴娆¤皟鐢ㄧ粨鏉熷悗a鍦ㄥ唴瀛樺唴鍊间负2锛涙柟娉曠涓娆¤皟鐢ㄧ粨鏉熷悗a鍦ㄥ唴瀛樺唴鍊间负3锛 2.鍦ㄦ柟娉曪紙鍑芥暟锛...
  • C璇█涓彉閲忓瓨鍌static鍜宔xtern涓や釜鍏抽敭瀛楃殑浣滅敤鍒嗗埆鏄粈涔
    绛旓細浣嗘槸濡傛灉鍦╢ile1.c涓妸int a=1鏀逛负static int a=1;閭d箞鍦╢ile2.c鏄棤娉曡闂埌鍙橀噺a鐨勩傚師鍥犲湪浜庣敤static瀵瑰叏灞鍙橀噺杩涜淇グ鏀瑰彉浜嗗叾浣滅敤鍩熺殑鑼冨洿锛岀敱鍘熸潵鐨勬暣涓伐绋嬪彲瑙佸彉涓烘湰婧愭枃浠跺彲瑙併(3)淇グ鍑芥暟 鐢╯tatic淇グ鍑芥暟鐨勮瘽锛屾儏鍐典笌淇グ鍏ㄥ眬鍙橀噺澶у悓灏忓紓锛屽氨鏄敼鍙樹簡鍑芥暟鐨勪綔鐢鍩熴俥xtern鍏抽敭瀛 鍦–...
  • static鏄疨ython鐨鍏抽敭瀛鍚
    绛旓細鍦 C 璇█涓紝鍏抽敭瀛 static 鐨勪綔鐢鏄細1銆佸皢 auto 鍙橀噺锛堝潡浣滅敤鍩燂紝鍔ㄦ佸瓨鍌ㄦ湡锛屾棤閾炬帴锛夋敼鍙樺叾瀛樺偍鏈熶负闈欐佸瓨鍌ㄦ湡锛屽叾浠栧睘鎬т笉鍙樸2銆佸皢澶栭儴閾炬帴鐨勬枃浠朵綔鐢ㄥ煙鏍囪瘑绗︼紝淇敼涓哄唴閮ㄩ摼鎺ワ紝鍏朵粬灞炴т笉鍙樸傚湪 python 涓 global 鐩稿綋浜 C 璇█涓慨楗板叿鏈夊潡浣滅敤鍩熺殑鏍囪瘑绗︾殑鍏抽敭瀛 extern銆
  • c璇█涓static鍏抽敭瀛
    绛旓細C++闈㈠悜杩囩▼鐨剆tatic鍜孋鐨勬槸涓鏍风殑銆 C++鐨剆tatic鏈変袱绉嶇敤娉曪細闈㈠悜杩囩▼绋嬪簭璁捐涓殑static鍜岄潰鍚戝璞$▼搴忚璁′腑鐨剆tatic銆傚墠鑰呭簲鐢ㄤ簬鏅氬彉閲忓拰鍑芥暟锛屼笉娑夊強绫伙紱鍚庤呬富瑕佽鏄巗tatic鍦ㄧ被涓鐨勪綔鐢銆備竴銆侀潰鍚戣繃绋嬭璁′腑鐨剆tatic 1銆侀潤鎬佸叏灞鍙橀噺 鍦ㄥ叏灞鍙橀噺鍓嶏紝鍔犱笂鍏抽敭瀛梥tatic锛岃鍙橀噺灏辫瀹氫箟鎴愪负涓涓潤鎬...
  • C#涓static鍏抽敭瀛楃殑浣滅敤
    绛旓細1.static鎰忔濇槸闈欐侊紝鍙互淇グ绫汇佸瓧娈点佸睘鎬с佹柟娉 2.鏍囪涓static鐨灏变笉鐢ㄥ垱寤哄疄渚嬪璞¤皟鐢ㄤ簡锛屽彲浠ラ氳繃绫诲悕鐩存帴鐐瑰嚭鏉 3.static涓夌鐢ㄦ硶锛4.鐢ㄤ簬鍙橀噺鍓嶏紝琛ㄧず姣忔閲嶆柊浣跨敤璇ュ彉閲忔墍鍦ㄦ柟娉曘佺被鎴栬嚜瀹氫箟绫绘椂锛屽彉閲忕殑鍊间负绋嬪簭杩欐杩愯鏈鍚庝竴娆′负鍙橀噺璧嬪兼椂鐨勫硷紝杩欎釜鏂规硶绉颁负闈欐佸嚱鏁帮細private void s(){...
  • Java涓殑鍏抽敭瀛梥tatic鍜宖inal鐨勪綔鐢鏄粈涔?
    绛旓細澶у閮界煡閬擄紝鍦ㄧ▼搴忎腑浠讳綍鍙橀噺鎴栬呬唬鐮侀兘鏄湪缂栬瘧鏃剁敱绯荤粺鑷姩鍒嗛厤鍐呭瓨鏉ュ瓨鍌ㄧ殑锛岃屾墍璋撻潤鎬佸氨鏄寚鍦ㄧ紪璇戝悗鎵鍒嗛厤鐨勫唴瀛樹細涓鐩村瓨鍦紝鐩村埌绋嬪簭閫鍑哄唴瀛樻墠浼氶噴鏀捐繖涓┖闂达紝涔熷氨鏄彧瑕佺▼搴忓湪杩愯锛岄偅涔堣繖鍧楀唴瀛樺氨浼氫竴鐩村瓨鍦╘x0d\x0a\x0d\x0afinal浣滅敤\x0d\x0a final鍏抽敭瀛鏄渶缁堢殑銆佹渶鍚庣殑鎰忔濓紝鍦...
  • static鍏ㄥ眬鍙橀噺涓庢櫘閫氱殑鍏ㄥ眬鍙橀噺鏈変粈涔鍖哄埆?
    绛旓細鍦–璇█涓紝鍏抽敭瀛梥tatic鏈変笁涓槑鏄鐨勪綔鐢锛1). 鍦ㄥ嚱鏁颁綋锛屼竴涓澹版槑涓洪潤鎬佺殑鍙橀噺鍦ㄨ繖涓鍑芥暟琚皟鐢ㄨ繃绋嬩腑鍙細鍒濆鍖栦竴娆°2). 鍦ㄦā鍧楀唴锛堜絾鍦ㄥ嚱鏁颁綋澶栵級锛屼竴涓澹版槑涓洪潤鎬佺殑鍙橀噺鍙互琚ā鍧楀唴鎵鐢ㄥ嚱鏁拌闂紝浣嗕笉鑳借妯″潡澶栧叾瀹冨嚱鏁拌闂傚畠鏄竴涓湰鍦扮殑鍏ㄥ眬鍙橀噺銆3). 鍦ㄦā鍧楀唴锛屼竴涓澹版槑涓...
  • 扩展阅读:static关键字的5种用法 ... static int的值会变吗 ... java static关键字的作用 ... public关键字的作用 ... volatile关键字的作用 ... java常用的关键字 ... 简述static关键字作用 ... static关键字的特点 ... c语言中static关键字的作用 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网