当前位置: 首页 > news >正文

汕头网站设计制作公司今天的重要新闻

汕头网站设计制作公司,今天的重要新闻,网页界面设计作品赏析,威海做网站优化一、抽象类和抽象方法 抽象类:使用abstract修饰的类 抽象方法:在类中没有方法体的方法,称为抽象方法,抽象方法用abstract修饰 抽象类中可以没有抽象方法,包含抽象方法的类必是抽象类 如果子类没有实现父类中的全部…

一、抽象类和抽象方法

抽象类:使用abstract修饰的类

抽象方法:在类中没有方法体的方法,称为抽象方法,抽象方法用abstract修饰

抽象类中可以没有抽象方法,包含抽象方法的类必是抽象类

如果子类没有实现父类中的全部抽象方法,子类也必是抽象类

没有抽象构造方法,抽象类不能被实例化

抽象类中可以有非抽象构造方法,创建子类的实例时可以调用

抽象类和非抽象子类间也能存在多态性

抽象类中可以有非抽象方法

抽象类可以继承,但是包含抽象方法的抽象类,在继承的时候会报错,因为类中有抽象方法,解决报错的方法有两种,第一种将子类也定义成抽象类,另一种是重写抽象类中所有的抽象方法。

抽象类不能创建对象,但是可以创建抽象类类型的对象,由子类对象赋值

如果一个方法只有存在的意义没有实现的意义,这个方法可以定义成抽象方法,包含抽象方法的类必然是一个抽象类

抽象类存在的意义就是被继承,抽象方法存在的意义就是被重写
抽象类和抽象方法就是为多态服务的,所以抽象类和非抽象之间也存在多态性

二、abstract关键字与其它修饰符

1.abstract和修饰符static不能联用,没有抽象静态方法

2.abstract和修饰符private不能联用,abstract与权限修饰符联用时没有顺序要求,abstract类中不可以有private的额成员

3.abstract和修饰符final不能联用,abstract不能与final同时修饰同一个类

static修饰方法;final修饰;private修饰
不能    重写              重写             继承

三、接口

1.接口:

概念性接口:系统对外提供的所有服务

用关键字interface定义的接口,也称为接口类型

定义接口使用的关键字是interface,类使用class修饰

接口实际上是由常量和抽象方法构成的特殊类

2.组成

静态常量

抽象方法(只有定义,没有实现)

3.定义接口

(1)一般形式

[public] interface 接口名 [extends 父接口名]
{
   [pubic] [static] [final] 类型 常量字段名=值;
     ……
    [public] [abstract] 返回类型 方法名(参数列表);
     ……
}

(2)接口只能用权限修饰符public和默认修饰(一种特殊的抽象类)

(3)每一个接口文件可以包含多个类和接口,但只能有一个文件名和相同的public接口

(4)接口中的常量默认用public static final修饰

(5)接口中的方法默认用public abstract修饰

  4.接口的实现

[public] class 类名 [extends 祖先类名]
                                implements 接口名[,其它 接口名……]
{
 //类的实现代码
     ……
 }
5.接口与接口的关系

继承:接口可以继承一个或多个其它接口,并添加新的属性、方法

6.接口与类的关系:

(1)类实现接口:多个(无关)类可以实现同一接口,多个(无关)接口也可以被一个类实现(多对多的关系)
(2)与子类继承抽象类相似,当非抽象类实现接口时必须实现接口中的所有(抽象)方法,否则定义为抽象类
(3)一个类只能继承一个直接父类,但能实现一个或多个接口;
(4)类在继承其他类的同时也可以实现一个或多个接口,但要保证关键字extends在implements前使用

7.接口无构造方法,不能创建接口的实例,但可以定义接口类型的引用变量,该变量的引用是这个接口的实现类的实例

8.接口与实现类之间也存在多态性

jdk1.8之后接口中可以有非抽象的方法
 
一个接口文件中可以包含多个接口和多个类

可以有0个或一个由public修饰的接口

public修饰的接口的名字要跟文件的名字一样

接口与接口之间是存在继承关系的,但是是多继承关系

类和类之间存在继承关系,是单继承关系

接口和类之间没有关系,接口在前类在后

类和接口之间是实现的关系,使用implements关键字表示实现关系,而且是多实现关系,类在前接口在后

一个类可以同时继承一个类实现多个接口,但是要求继承在实现之前

类实现接口的时候需要重写接口中所有的抽象方法,否则要把该类定义成抽象类否则编译报错

接口不能创建对象
可以创建接口类型的对象,由实现类赋值
接口也可以存在多态

 在继承接口的类中通常要给出接口中定义的抽象方法的具体实现

四、抽象类与接口

对比1:

类只能继承一个抽象类

类可以实现多个接口

对比2:

抽象类可以有部分方法的实现,防止子类的重复实现,介于实现与抽象间的“半成品”

接口中没有方法的实现,完全是“抽象的”

对比3:

抽象类可扩展性好:可以加入属性和非抽象方法

接口要求稳定:加入的方法都是抽象方法,(如果扩展)实现类可能会出现问题

对比4:

抽象类中的抽象方法必须加abstract关键字

抽象类中的抽象方法可以不加abstract关键字(接口中的方法都是抽象方法)

五、工厂模式

1.工厂(方法)模式:是一种创建模式,实例化同一接口(父类)的多令工厂个类
2.设计:定义创建产品对象的工厂类,由工厂类创建实现(继承)同-接口(父类)的多个类对象
3.分类:
工厂方法:一个工厂方法,通过字符串判断,创建不同类的对象
多个工厂方法:多个工广方法,通过不同方法创建不同类的对象
静态工厂方法(简单工厂方法):多个静态方法
4.何时使用:
大量需要实例的类
实现(继承)同一接口(父类)

六、适配器模式

1.适配器模式(Adapter Pattern)

也叫包装器模式(Wrapper Pattern)

定义:将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作

2.分类

类的适配器模式:用于对类进行适配                                                                                                                               何时使用:类转换成满足另一接口时

对象的适配器模式:用于对对象进行包装                                                                                                                        何时使用:类转换成满足另一接口时

接口的适配器模式:用于对接口抽象化                                                                                                                             何时使用:当不希望实现一个接口的所有方法

3.三个角色

源角色(220V电源):需要适配的目标类或接口

目标角色(计算机的电源接口):期望得到的接口

适配器角色(计算机电源变压器):用于把源角色转换成目标角色

4.何时使用

系统需要使用现有的类,而这些类的接口不符合系统的需要

七、适配器模式优缺点

适配器模式的优点如下:
1.将目标类和适配者类解耦,通过引入一个适配器类来重用现有的适配者类,而无需修改原有代码
2.增加了类的透明性和复用性,将具体的实现封装在适配者类中,对于客户端类来说是透明的,而且提高了适配者的复用性
3.灵活性和扩展性都非常好,通过使用配置文件,可以很方便地更换适配器,也可以在不修改原有代码的基础上增加新的适配器类,完全符合“开闭原则”
4.由于适配器类是适配者类的子类,因此可以在适配器类中置换一些适配者的方法,使得适配器的灵活性更强

对象适配器模式的缺点如下:
与类适配器模式相比,要想置换适配者类的方法就不容易。如果一定要置换掉适配者类的一个或多个方法,就只好先做一个适配者类的子类将适配者类的方法置换掉,然后再把适配者类的子类当做真正的适配者进行适配,实现过程较为复杂

http://www.khdw.cn/news/21155.html

相关文章:

  • 青岛网站建设设计html网页制作模板代码
  • 网博士自助建站系统下载百度搜索大数据
  • 铜陵app网站做招聘百度推广软件
  • wordpress图标字体不显示湖南专业的关键词优化
  • 建筑网片厂家直销seo工作内容
  • jsp怎么做视频网站搜索热词排名
  • 软装设计师培训seo排名优化代理
  • 手机社交网站模板数字化营销
  • 股票订阅网站开发怎么建立网站平台
  • 贵阳能做网站的公司有哪些中国网络推广网站排名
  • 网站的虚拟人怎么做的关键词排名快照优化
  • 大陆做爰视频网站seo技术培训宁波
  • 番禺外贸型网站建设网级移动营销app下载
  • 网站开发优势合肥网站建设公司
  • 网站后期维护seo搜索推广费用多少
  • 做网站选择哪家运营商百度识图在线网页版
  • 烟草许可证每年做证去那个网站seo基础课程
  • 网站开发工程师需要具备的综合素质武汉网站搜索引擎优化
  • 哪些网站是用wordpress搭建的人工智能培训心得体会
  • centos6.5 wordpress网站关键词在线优化
  • 自学做网站需要多久网上竞价
  • 开发网站年度工作总结及明年工作计划百度有人工客服吗
  • jsp mysql 开发网站开发电子技术培训机构
  • 怎么用video做网站开头google官网浏览器
  • 滑县网站建设宁波谷歌优化
  • 方案策划怎么做全网关键词优化公司哪家好
  • 网红商城自助下单appseo优化标题 关键词
  • 银川网站建设多少钱广告联盟平台排名
  • 学生做家教网站网站展示型推广
  • 一个主机域名可以做多少个网站百度广告推广怎么做