电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Java父類繼承中的static和final用法

瀏覽:14日期:2022-08-23 13:09:57

1、父類中staitic修飾的靜態方法,不能覆蓋、不能繼承。

2、父類中staitic修飾的變量或常量,能覆蓋、不能繼承。

static修飾的變量和方法,只屬于類本身,不屬于對象;當聲明一個對象時,并不產生static變量和方法的拷貝。也就是說,用static修飾的變量和方法在類加載的時候,會分配一塊存儲空間,所有此類的對象都可以操控此塊存儲空間;

注意:當子類沒有與父類同名的static變量(或方法時),子類的對象也可操控這塊內存空間。但是,子類并沒有繼承父類中static修飾的變量和方法。這是因為static修飾的變量和方法是屬于父類本身的。

3、父類中final修飾的方法,不能覆蓋,但可繼承。

代碼示例:

package com.jdk; /** * Created by Liuxd on 2018-11-02. */public class TestExtendsClass { public static void main(String[] args) { ParentClass parentClass = new ChildClass(); System.out.println(); int pFResult = ParentClass.plus(3,2); int pResult = ParentClass.add(3,2); int cResult = ChildClass.add(3,2); int pMResult = parentClass.minus(2,3); System.out.println('父類靜final方法計算結果:' + pFResult); System.out.println('父類靜方法計算結果:' + pResult); System.out.println('子類靜方法計算結果:' + cResult); System.out.println('父類final方法計算結果:' + pMResult); System.out.println('父類靜態變量num:' + ParentClass.num); System.out.println('子類靜態變量num:' + ChildClass.num); }} class ParentClass { public static final int num = 1; ParentClass() { System.out.println('執行父類無參數構造方法'); } static int add(int i, int j) { return i + j; } static final int plus(int i, int j) { return i + j; } final int minus(int i, int j) { return i - j; } } class ChildClass extends ParentClass { public static final int num = 2; ChildClass() { System.out.println('執行子類無參數構造方法'); } // @Override 無法繼承,編譯時出錯 static int add(int i, int j) { return i * j; } // 無法繼承,編譯時出錯// int plus(int i, int j) {// return i + j;// } // 無法繼承,編譯時出錯// int minus(int i, int j) {// return i - j;// } }

輸出結果:

執行父類無參數構造方法

執行子類無參數構造方法

父類靜final方法計算結果:5

父類靜方法計算結果:5

子類靜方法計算結果:6

父類final方法計算結果:-1

父類靜態變量num:1

子類靜態變量num:2

補充知識:java中static、final 和 static final之間的區別

static可以修飾:全局屬性,方法,代碼塊,內部類(靜態內部類或嵌套內部類)

由于靜態屬性和方法是屬于該類的所有對象的,所以可以用類名.靜態屬性/方法名來訪問。用static修飾的代碼塊表示靜態代碼塊,當Java虛擬機(JVM)加載類時,就會執行該代碼塊。

1.被static修飾的變量,叫靜態變量或類變量(不能是局部變量),直接可以用類名調用;被static修飾的變量,叫實例變量,必須實例化對象以后調用;static修飾的變量可以被修改.

2.靜態方法可以直接通過類名調用,任何的實例也都可以調用,因此靜態方法中不能用this和super關鍵字,也不能直接訪問所屬類的實例變量和實例方法(非static的成員變量和成員成員方法),只能訪問所屬類的靜態成員變量和成員方法。

3.父子類中,靜態方法只能被靜態方法覆蓋,父子類中,非靜態方法只能被非靜態方法覆蓋。

常見的java中的main方法必須有static修飾,因為在類加載時無法創建對象,靜態方法可以不通過對象調用,所以在類的main方法所在在類加載時就可以通過main方法入口來運行程序。

4.static代碼塊也叫靜態代碼塊,是在類中獨立于類成員的static語句塊,可以有多個,位置可以隨便放,它不在任何的方法體內,JVM加載類時會執行這些靜態的代碼塊,如果static代碼塊有多個,JVM將按照它們在類中出現的先后順序依次執行它們,每個代碼塊只會被執行一次。

final可以修飾:方法,類,局部變量

對于基本類型數據,final會將值變為一個常量,創建后不能被修改;但是對于對象句柄(亦可稱作引用或者指針),final會將句柄變為一個常數(進行聲明時,必須將句柄初始化到一個具體的對象。而且不能再將句柄指向另一個對象。

但是,對象的本身是可以修改的。這一限制也適用于數組,數組也屬于對象,數組本身也是可以修改的。

方法參數中的final句柄,意味著在該方法內部,我們不能改變參數句柄指向的實際東西,也就是說在方法內部不能給形參句柄再另外賦值)。

1.final修飾的變量就會變成常量,而且應當大寫,一旦賦值不能改變,final的常量不會有默認初始值,對于直接在初始化賦值時final修飾符常和static修飾符一起使用。

2.final修飾的方法將不能被其子類覆蓋重寫。

3.final修飾的類類將不能被繼承,且final類中的方法也都是final的, final不能用來修飾構造方法,在父類中如果有常量屬性,在子類中使用常量屬性時是不會進行父類的類加載。

static final和final static

沒什么區別,一般static寫在前面,既具有static屬性又具有final屬性的類/方法/變量。

以上這篇Java父類繼承中的static和final用法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 早报网| 自动部分收集器,进口无油隔膜真空泵,SPME固相微萃取头-上海楚定分析仪器有限公司 | 金属清洗剂,防锈油,切削液,磨削液-青岛朗力防锈材料有限公司 | 郑州爱婴幼师学校_专业幼师培训_托育师培训_幼儿教育培训学校 | 柔软云母板-硬质-水位计云母片组件-首页-武汉长丰云母绝缘材料有限公司 | 广州二手电缆线回收,旧电缆回收,广州铜线回收-广东益福电缆线回收公司 | 德国EA可编程直流电源_电子负载,中国台湾固纬直流电源_交流电源-苏州展文电子科技有限公司 | SDI车窗夹力测试仪-KEMKRAFT方向盘测试仪-上海爱泽工业设备有限公司 | 精密模具加工制造 - 富东懿 | 广州监控安装公司_远程监控_安防弱电工程_无线wifi覆盖_泉威安防科技 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | 通辽信息港 - 免费发布房产、招聘、求职、二手、商铺等信息 www.tlxxg.net | 磁力反应釜,高压釜,实验室反应釜,高温高压反应釜-威海自控反应釜有限公司 | 连栋温室大棚建造厂家-智能玻璃温室-薄膜温室_青州市亿诚农业科技 | 贵州成人高考网_贵州成考网| 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 | 上海办公室设计_办公楼,写字楼装修_办公室装修公司-匠御设计 | 深圳市索富通实业有限公司-可燃气体报警器 | 可燃气体探测器 | 气体检测仪 | 铝合金脚手架厂家-专注高空作业平台-深圳腾达安全科技 | MVR蒸发器厂家-多效蒸发器-工业废水蒸发器厂家-康景辉集团官网 | 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 雾度仪_雾度计_透光率雾度仪价格-三恩时(3nh)光电雾度仪厂家 | Pos机办理_个人商户免费POS机申请-拉卡拉办理网 | 威实软件_软件定制开发_OA_OA办公系统_OA系统_办公自动化软件 | 超声波流量计_流量标准装置生产厂家 _河南盛天精密测控 | 不锈钢散热器,冷却翅片管散热器厂家-无锡市烨晟化工装备科技有限公司 | 液氮罐_液氮容器_自增压液氮罐-北京君方科仪科技发展有限公司 | 雪花制冰机(实验室雪花制冰机)百科 | 色油机-色母机-失重|称重式混料机-称重机-米重机-拌料机-[东莞同锐机械]精密计量科技制造商 | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | 商用绞肉机-熟肉切片机-冻肉切丁机-猪肉开条机 - 广州市正盈机械设备有限公司 | 烟气换热器_GGH烟气换热器_空气预热器_高温气气换热器-青岛康景辉 | 济南品牌设计-济南品牌策划-即合品牌策划设计-山东即合官网 | 冷柜风机-冰柜电机-罩极电机-外转子风机-EC直流电机厂家-杭州金久电器有限公司 | VI设计-LOGO设计公司-品牌设计公司-包装设计公司-导视设计-杭州易象设计 | 耐高温硅酸铝板-硅酸铝棉保温施工|亿欧建设工程 | 农产品溯源系统_农产品质量安全追溯系统_溯源系统 | 电采暖锅炉_超低温空气源热泵_空气源热水器-鑫鲁禹电锅炉空气能热泵厂家 | 定量包装机,颗粒定量包装机,粉剂定量包装机,背封颗粒包装机,定量灌装机-上海铸衡电子科技有限公司 | 深圳成考网-深圳成人高考报名网| 间甲酚,间甲酚厂家-山东祥东新材料 |