抽象类 | 接口 | 包 | 访问控制

一、抽象类
以前我们定义一个类就需要写一些方法来描述这个类的具体行为,就像前面的Animal类,需要我们写shout方法,但是没个动物的叫声都不一样,所以Animal的shout方法方法体写什么都不太标准,这时候我们就可以不写方法体了。
不写方法体的方法叫做抽象方法,抽象方法需要用abstract来修饰

abstract void shout ();

如果一个类中有抽象方法,那么这个类就必须是抽象类,必须使用abstract来修饰。
但是! 但是! 但是抽象类可以没有抽象方法,只需要用abstract修饰即可。
注意!抽象类不能被实例化,因为抽象类中可能有抽象方法,抽象方法没有方法体,不可以被调用。如果想要调用,需要创建子类,在子类中进行实现。

二、接口
如果一个抽象类中所有方法都是抽象的,那么这个类就可以用另外一种方法来定义了,即接口。
接口使用interface关键字来声明
接口中的方法默认使用public abstract来修饰
接口中的变量默认使用public static final 即全局常量
以为接口中的方法都是抽象方法,所以也不能通过实例化进行调用,因此需要定义一个类,并使用implements关键字来实现接口中的方法。
程序中还可以定义一个接口用extends关键字去继承另一个接口。

接口总结
1、接口中的方法都是抽象的,不能实例化
2、当一个类实现接口的时候,如果这个类是抽象类,只需要实现接口中自己想是实现的方法即可,如果不是抽象类,则需要实现接口中所有方法
3、一个类可以通过implements实现多个接口,需要用逗号隔开,例如

class w implements a,b,c{

}

4、一个类在继承另一个类的同时,还可以实现接口,此时extends必须放在implements关键字之前。

三、包
为了将编写的类,像计算机的文件一样分目录存放,java语言引入了包。
包是专门用来存放类的,通常将功能相似的类放在同一个包下。
包语句使用package 包语句必须位于java源文件第一行
import语句用来引入包,引入格式是 import 包名.类名

jdk中,java的核心类主要放在java这个包及其子包下。可使用import 包名.* 导入该包下所有类

java.lang 核心类
java.util 大量工具类,集合类
java.net 网络编程类和接口
java.io 输入输出类相关类和接口
java.awt 图形界面的相关类和接口

四、访问控制
这里写图片描述(图片来自传智播客ppt)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值