java012:final关键字和抽象类

一,修饰变量:
1,修饰属性:修饰的属性必须初始化,初始化之后不能再改,沦为常量
初始化的三种方法:
a,定义的时候初始化
b,代码块中初始化
c,构造器中初始化
在这里插入图片描述

2,修饰局部变量:
修饰局部变量时,可以不初始化,但是使用之前必须赋值,赋值之后不能再改,沦为常量(常量行业约定命名用大写)
3,修饰方法:
final修饰的方法不能被重写
4,修饰类:
final修饰的类不能被继承
二,抽象类:
1,使用了关键词abstract声明的类叫作“抽象类”。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。“抽象方法”,属于一种不完整的方法,只含有一个声明,没有方法主体。
抽象:忽略属性值,只要属性;忽略行为过程,只要行为。
###比如你的老板说,大家加油哈,将来发财了人人有份。又如,好好学,将来必成大牛,这些都可以理解成是一种抽象的,你也可以理解成所谓的抽象就是光说不做。
注意:
1被abstract修饰的类就是抽象类
2抽象类里面可以有抽象方法,抽象方法必须被abstract修饰
3,抽象类中也可以有普通方法
4,抽象类不能被实例化
5,抽象类必须被之类继承,非抽象类必须重写抽象类中的所有抽象方法
6,如果子类也是抽象类,那么可以不用重写父类抽象方法
7,抽象类中可以有构造器(new不了)
8,抽象类不能被final
9,抽象方法不能被final,static修饰
10抽象方法必须存在于抽象类中
抽象类的作用:
1,共性上提,提高代码重用率
2,抽象类的出现就是为了让子类继承
练习:抽象类的应用:
抽象类可以理解为父类自己不知道该怎么办的事,规划好一个大纲,交给自己的子类去办。就好比愚公想移山,规划好移山的战略方案,然后交给自己的后代去办。
比较while循环和if循环谁的运行速度快:

在这里插入图片描述
结果毫秒:

在这里插入图片描述
上面程序用到模板设计模式
三,设计模式:
在java中大概有23种设计模式,不过现在应该不止23种了
###前人总结的在特殊情况下解决问题的最佳方案就是设计模式。
现在先把模板用着
四种访问修饰符的作用域:

在这里插入图片描述
包其实就是个文件夹,里面放同一类型的类或者接口。
包的命名:
1:增大命名空间
2:归档(同一包下放同一类型的类或接口)
包的命名规范:
公司里全是使用反向域名来命名包的
www.baidu.com 公司域名
Com.baidu.entity实体包
Com.baidu.util工具包
Com.baidu.dao数据连接包
Com.baidu.servlet:servlet包

展开阅读全文

没有更多推荐了,返回首页