继承、封装、多态、接口

封装

静态域:将域定义为static,每个类只有一个这样的域。这个类的所有实例共享一个静态域。它属于类,不属于任何独立的对象
静态方法:不能向对象实施操作的方法,可认为静态方法是没有this参数的方法。建议使用类名来调用静态方法。
使用静态方法的情况:
一个方法不需要访问对象状态,其所需参数都是通过显示参数提供。
一个方法只需要访问类的静态域。

继承

两个类之间有明显的is-a关系。在Java中,所有继承都是共有继承。已存在的类称为超类,新类称为子类。
若超类中的方法对子类并不适用,需要为子类提供一个新的方法来覆盖超类中的方法。
若需要访问超类中的私有域,必须借助于公有的接口,可用super.超类方法名()解决问题
由于子类的构造器不能访问超类的私有域,必须利用超类的构造器对这部分私有域进行初始化。使用super调用构造器的语句必须是子类构造器的第一句。
如果子类的构造器没有显式调用超类中的其他构造器,则会默认调用(无参)。
Java不支持多继承

多态

对象变量是多态的,可以将一个子类的对象赋给超类变量。一个超类可以引用他的任何一个子类。但是不能将一个超类的引用赋给子类变量

有时希望阻止某个类定义子类,不允许扩展的类称为final类。
类中的方法也可以被声明为final,这样做,子类就不能覆盖这个方法。

较高层次的类可能比较抽象,可定义抽象类。包含一个或多个抽象方法的类本身必须被声明为抽象的。
除了抽象方法,抽象类还可以包含具体数据和具体方法。
抽象方法充当着占位的角色,他们的实现在子类中。
不含抽象方法也可以声明抽象类,抽象类不能被实例化,但可以定义一个非抽象子类的对象。

Object:所有类的超类

接口

接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值