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

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

Java單例模式繼承覆蓋多態原理詳解

瀏覽:7日期:2022-08-23 16:15:34

1、單例模式:

1)提出原因

是由gof 也就是四人組提出來的。為了保證jvm中某一類型的java對象永遠只有一個,同時也是為了節省內存的開銷。因為外面程序可以通過new的方法直接調用類里面的構造方法。導致該類的對象不止一個。

2)定義

單例模式的意思就是只有一個實例。單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統提供這個實例。這個類稱為單例類。

A、構造方法私有化;

B、對外提供一個公開的、靜態的、獲取當前類型對象的方法

C、提供一個當前類型的靜態變量。

3)分類

A、餓漢式單例模式:在類加載時就完成了初始化,所以類加載較慢,但獲取對象的速度快

public class CustomerSingleton { private static CustomerSingleton instance = new CustomerSingleton();//靜態私有成員,已初始化 private CustomerSingleton() { //私有構造函數 System.out.println('私有構造函數執行'); } public static CustomerSingleton getCustomerInstance() //靜態,不用同步(類加載時已初始化,不會有多線程的問題) { return instance; }}

B、懶漢式單例:類加載時不初始化

當調用getInstance方法的時候,底層的對象才會考慮創建,所以顯得比較懶

public class UserSingleton { //提供一個當前類型的靜態變量 public static UserSingleton intance=null; //構造方法私有化 private UserSingleton(){ System.out.println('構造函數私有化'); } //對外提供一個公開獲取Singleton 對象的方法 public static UserSingleton getInstance(){ if(intance==null){ intance=new UserSingleton(); } return intance; }}

2、繼承

1)繼承的語法:java中類只支持單繼承,一個類繼承了A類就無法再繼承B類,繼承是面向對象的重要概念。一個類沒有現實的繼承其他類,默認繼承sun提供的java.lang.object

[修飾符列表] class 子類名 extends 父類名{類體;

}

備注:

java語言中子類繼承父類,會將父類中所有的數據全部繼承,包括私有的也能繼承過來;

但是在子類中無法直接訪問父類中的私有數據。但是可以間接訪問,構造方法無法被子類繼承。

3、方法的覆蓋

1)什么時候方法要進行覆蓋?

如果父類中的方法已經無法滿足當前子類的業務需求,需要將父類中的方法進行覆蓋重新子類如果重寫父類的方法之后,子類對象一定調用的是重寫之后的方法。覆蓋指的是成員方法和成員變量無關。

2)發生方法覆蓋的條件:

第一:發生在具有繼承關系的兩個類之間 第二:必須具有相同的方法名,相同的返回值類型,相同的參數列表 第三:重寫的方法不能比被重寫的方法擁有更低的訪問權限 第四:重寫的方法不能比被重寫的方法拋出更寬泛的異常 第五:私有的方法不能被覆蓋(因為私有方法無法被子類訪問,所以不能重寫;必須是public的方法才能被覆蓋,如果定義成了final是不可以被重寫的) 第六:構造方法無法被覆蓋,因為構造方法無法被繼承。 第七:靜態的方法不存在覆蓋 第八:覆蓋指的是成員方法,和成員變量無關。

4、多態

向上轉型:子轉父(父類型的引用,指向子類型的對象);

向下轉型:父轉子(子類型的引用,指向父類型的對象);

多態編譯期是靜態綁定,而運行期是動態綁定

5、多態的經典例子

public class Person { public void feed (Animal a){ a.eat(); }}public class Animal { public void eat(){ }}public class Dog extends Animal { public void eat(){ System.out.println('狗在吃肉'); }}public class Cat extends Animal { public void eat(){ System.out.println('貓在吃魚'); }}public class Test01 { public static void main(String[] args) { Person p1=new Person(); Dog d1=new Dog(); Cat c1=new Cat(); p1.feed(d1); p1.feed(c1); }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 对辊破碎机-液压双辊式,强力双齿辊,四辊破碎机价格_巩义市金联机械设备生产厂家 | 中国产业发展研究网 - 提供行业研究报告 可行性研究报告 投资咨询 市场调研服务 | 远程会诊系统-手术示教系统【林之硕】医院远程医疗平台 | LZ-373测厚仪-华瑞VOC气体检测仪-个人有毒气体检测仪-厂家-深圳市深博瑞仪器仪表有限公司 | 宿松新闻网 宿松网|宿松在线|宿松门户|安徽宿松(直管县)|宿松新闻综合网站|宿松官方新闻发布 | 柔软云母板-硬质-水位计云母片组件-首页-武汉长丰云母绝缘材料有限公司 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 庭院灯_太阳能景观灯_草坪灯厂家_仿古壁灯-重庆恒投科技 | IIS7站长之家-站长工具-爱网站请使用IIS7站长综合查询工具,中国站长【WWW.IIS7.COM】 | 避光流动池-带盖荧光比色皿-生化流动比色皿-宜兴市晶科光学仪器 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 万博士范文网-您身边的范文参考网站Vanbs.com | 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 安徽净化工程设计_无尘净化车间工程_合肥净化实验室_安徽创世环境科技有限公司 | 讲师宝经纪-专业培训机构师资供应商_培训机构找讲师、培训师、讲师经纪就上讲师宝经纪 | 购买舔盐、舔砖、矿物质盐压块机,鱼饵、鱼饲料压块机--请到杜甫机械 | 匀胶机旋涂仪-声扫显微镜-工业水浸超声-安赛斯(北京)科技有限公司 | 合肥防火门窗/隔断_合肥防火卷帘门厂家_安徽耐火窗_良万消防设备有限公司 | 睿婕轻钢别墅_钢结构别墅_厂家设计施工报价 | 石家庄装修设计_室内家装设计_别墅装饰装修公司-石家庄金舍装饰官网 | 临朐空调移机_空调维修「空调回收」临朐二手空调 | 无纺布包装机|径向缠绕包装机|缠绕膜打包机-上海晏陵智能设备有限公司 | POM塑料_PBT材料「进口」聚甲醛POM杜邦原料、加纤PBT塑料报价格找利隆塑料 | 贴板式电磁阀-不锈钢-气动上展式放料阀-上海弗雷西阀门有限公司 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 微信小程序定制,广州app公众号商城网站开发公司-广东锋火 | 拉力测试机|材料拉伸试验机|电子拉力机价格|万能试验机厂家|苏州皖仪实验仪器有限公司 | LCD3D打印机|教育|桌面|光固化|FDM3D打印机|3D打印设备-广州造维科技有限公司 | 水平筛厂家-三轴椭圆水平振动筛-泥沙震动筛设备_山东奥凯诺矿机 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 电磁铁_小型推拉电磁铁_电磁阀厂家-深圳市宗泰电机有限公司 | 路面机械厂家 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 刮板输送机,粉尘加湿搅拌机,螺旋输送机,布袋除尘器 | 美侍宠物-专注宠物狗及宠物猫训练|喂养|医疗|繁育|品种|价格 | 广东机电安装工程_中央空调工程_东莞装饰装修-广东粤标建设有限公司 | 铝箔袋,铝箔袋厂家,东莞铝箔袋,防静电铝箔袋,防静电屏蔽袋,防静电真空袋,真空袋-东莞铭晋让您的产品与众不同 | 电主轴,车床电磨头,变频制动电机-博山鸿达特种电机 | 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 | 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 电表箱-浙江迈峰电力设备有限公司-电表箱专业制造商 | 附着力促进剂-尼龙处理剂-PP处理剂-金属附着力处理剂-东莞市炅盛塑胶科技有限公司 | 物流公司电话|附近物流公司电话上门取货 |