(个人笔记)包、访问权限、抽象类、接口、final

 

目录

 

包-三大作用

包- 打包命令

包-命名规范

包-常用的包

包-引入包

访问权限

抽象类

接口

实现接口 VS 继承类

final


包-三大作用

1. 区分相同名字的类

2. 当类很多事,可以很多的管理类

3. 控制访问范围

包- 打包命令

package 包名

包-命名规范

字母小写

包-常用的包

java.lang.*包 自动引入

java.util.*包 工具包

java.net.*包 网络开发包

java.awt.*包 窗口工具包

包-引入包

import 包

---------------------------------------------------------------------------------------------------------------

访问权限

注意:继承是可以跨包继承,就像导入其他包,使用其方法

----------------------------------------------------------------------------------------------------------------

抽象类

1.抽象类存在的原因:父类方法的不确定性

(父类中的方法,父类的该方法的具体实现没意义,每种子类的实现都不同)

2. 抽象类不能实例化,因为其中的抽象方法没有实现。

----------------------------------------------------------------------------------------------------------------

接口

1. 接口中可以有变量,但变量不能用private和protected,只能使用public

    a. 接口中的变量,本质上都是static的,而且是final,不管你加不加static、final修饰

    b.在Java开发中,我们经常把常用的变量,定义在接口中,作为全局变量使用。

                访问形式:接口名,变量名

2. 接口不可以继承类,但是可以继承接口

3. 接口是更加抽象的抽象类,抽象类里的方法可以有方法体,接口里的所有方法都没有方法体,接口体现了程序设计的多态和高内聚低耦合的设计思想。

----------------------------------------------------------------------------------------------------------------

实现接口 VS 继承类

Java的继承是单继承,也就设计一个类最多只能有一个父类,这种单继承的机制可以保证类的纯洁性,比c++中的多继承机制简洁。但是不可否认,对子类功能的扩展有一定影响。

1. 实现接口可以看作是 对继承的一种补充

还有一点,继承是层级式的,不太灵活(即一个类的改变会导致好几个类同时要做修改)。

(如修改类1,类2、3、4、5都要做修改)这种结构修改某个类就会打破这种继承的平衡,而接口就没有这样的麻烦,因为它只针对实现接口的类才起作用。

2. 所以,实现接口可以在不打破继承关系的前提下,对某个类功能扩展,非常灵活。

----------------------------------------------------------------------------------------------------------------

final

1.可以修饰变量、类或方法

2. 当不希望父类的某个方法被子类覆盖时,可以用final关键字修饰

3. 当不希望类的某个变量的值被修改,可以用final修饰。

      a. 使用final修饰后,定义时必须赋初值。

      b. final修饰的变量又叫常量,变量名一般写成"xxx_xxx_xxx"

4. 当不希望类被继承时,可以用final修饰。

5. 什么时候用

a. 因为安全的考虑,类的某个方法不允许修改。

b. 类不被其他类继承

c. 某些变量值是固定不变的,比如圆周率3.1415926

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值