类与接口

抽象类
abstract 关键字表明一个抽象方法或抽象类,包含抽象方法的类叫做抽象类。如果一个类包含一个或多个抽象方法,该类必须被限定为抽象的

如果从一个抽象类继承并想创建该新类的对象,那么就必须为基类中的所有抽象方法提供定义,如果不这样做,那么导出类便也是抽象类,且编译器将会强制我们用abstract关键字来限定这个类

interface
interface不仅仅是一个极度抽象的类,因为它允许人们通过创建一个能够被向上转为多种基类的类型

接口可以包含域,但是这些域隐式地是static和final的

public interface仅限于该接口在与其同名的文件中被定义。如果不添加public关键字,则它只具有包访问权限

Java中一个派生类只能从一个基类继承,但可以继承任意多个接口,并可向上转型为每个接口


内部类
内部类的对象可以访问其外围对象的所有成员及所有元素

内部类的对象只能与其外围类的对象相关联的情况下才能被创建。构建内部类对象时,需要一个指向其外围类对象的引用,如果编译器访问不到这个引用,就会报错。

内部对象要生成对外部类对象的引用,可以使用外部类的名字后面紧跟圆点和this 

创建某个内部类的对象,通过.new语法:
            DotNew dn=new DotNew();  //外部类的对象
            DotNew.Inner dni=dn.new Inner(); //内部类的对象

在拥有外部类对象之前是不可能创建内部类对象的

内部类的用武之地在于其向上转型为一个接口的时候

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值