final+抽象+接口

final

  1. 被final修饰的变量不可被改变,又被称为常量

这里就报错了,证明不可改变

  1. 被final修饰的方法不可被重写

这里可以看到父类用final定义后,子类出现红色波浪线

  1. 被final修饰的类不可被继承

如图可见,出错

final总结就是不可变

抽象

抽象:现实不存在的东西

在java中只声明不实现

抽象方法:用abstract修饰的方法,不可以有方法体直接分号结束即可

抽象类:如果一个类中有抽象方法,那这个类一定是抽象类

抽象类中类名前和方法前都要写abstract

子类重写父类中所有定义了abstract类型

main

注:可不能这样写哦,Anmial是抽象类,不可以创建对象

特点:

  1. 抽象类不能创建对象

  1. 抽象类的子类必须重写父类中的抽象方法,否则子类也是抽象类

  1. 通过抽象类可以强制要求子类必须有哪些方法

接口

接口其实是一种特殊的抽象类

接口中所有的方法都是抽象方法

接口用interface来声明

总结:接口和继承类似,但是继承只能有一个,接口可以多实现,这就是弊端

类只能单继承,接口可以多实现

前两张图无变化

Protet接口

Gold中已经实现Interface,所以继承给Panda时不需要重写他们中的方法了

注意,虽然接口有多态性,但是使用时应注意 对象调用的方法在该类中是否拥有,如果没有就不行,如20行

总结:接口同样具有多态性,接口把许多不相干的内容结合在一起

在上述接口Interface中定义一个变量

在main中修改他的值发现会出错,但是可以打印出他是多少

特点:

  1. 接口的所有方法都是抽象方法,都是公开的

  1. 接口中所有的变量都是全局静态常量

面对对象练习3

现在有两种数据库,一种是mysql,一种是oracle,请通过程序设计,让用户自己选择数据库并进行增删查改

在main里,根据用户输入的编号自动创建一个数据库,并进行增删查改

两种思路

IDAO一般来讲是接口

对于第一种方法,我们会发现,有重复的方法,这样非常浪费时间

写过的内容需需要重复去写,不利

所以我们用第二种方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值