抽象的基本使用

抽象的关键字是abstract,可以用来修饰类(抽象类),还可以修饰方法(抽象方法)。

 1 //抽象类
2 public abstract class Animal{
3 //抽象方法
4 public abstract void eat();
5 //抽象方法
6 public abstract void sleep();
7 }
8
9 public class Dog extends Animal{
10 @Override
11 public void eat(){
12 System.out.println("狗吃骨头");
13 }
14
15 @Override
16 public void sleep(){
17 System.out.println("狗在窝里睡");
18 }
19 }

抽象的注意事项

1.抽象类中可以有抽象方法,也可以有非抽象方法
2.有抽象方法的类,必须是抽象类
3.抽象方法不能写方法体
4.具体的子类继承抽象类,必须重写父类中所有的抽象方法。否则就让子类继续抽象
5.抽象类不能创建对象

模板设计模式

在一个父类中定要好一些方法,有些方法是抽象的,有些方法是具体的。当子类继承父类的时候,只需要重写父类的抽象方法,完成自己的功能就可以了。

 1 //作文的模板
2 public abstract class Teamplate{
3 //写作为的方法
4 public void write(){
5 //开头
6 System.out.println("这是作文的开头。。。");
7
8 //正文(交给子类是完成)
9 body();
10
11 //结尾
12 System.out.println("这是作文的结束。。。");
13 }
14
15 //正文的方法(抽象方法)
16 public abstract void body();
17 }
18
19
20 //写一个子类,继承Teamplate
21 public class Tom extends Teamplate{
22 public void body(){
23 System.out.println("这是Tom写的作文的正文");
24 }
25 }
26
27 public class Test{
28 public static void main(){
29 Tom t=new Tom();
30 t.write();
31 }
32 }

final关键字

final是最终的意思,可以用来修饰类、方法、变量

1.final修饰类,不能被继承
2.final修饰方法,不能被重写
3.final修饰变量,不能被修改(final修饰的变量,值不能被赋值一次)
如果是引用类型,指的是地址值不能被更改

代码块

代码块本质上是一对大括号,在类中的位置不同,作用也不同。

局部代码块:在方法中,用于限定变量的作用范围

构造代码块:在类中方法外,用来提取构造方法的共性代码
每次创建对象,都会先执行构造代码块,再执行对应的构造方法。

静态代码块:被static修饰的代码块,在类中方法外。用作一些初始化的操作
当使用到这个类的时候,static代码会自动执行,而且只执行一次。

最新文章

  1. sql server 公共表达式的简单应用(cte)
  2. js在手机端不能正确显示
  3. Android多种进度条使用详解
  4. VS2012常用快捷键
  5. fedora23也会死机, 怎么办
  6. Lumia 830 win10m 启用触摸按键
  7. [水煮 ASP.NET Web API 2 方法论] 目 录
  8. Python 命令详解
  9. VCL Tclientsocket, Tserversocket控件安装方法
  10. 一些android系统参数的获取
  11. 解决Ubuntu系统的每次开机重启后,resolv.conf清空的问题
  12. iOS Mac系统下Ruby环境安装
  13. wlan的QOS配置
  14. nodejs定时任务node-schedule
  15. Android中的socket本地通讯框架
  16. Mybatis学习(一) - 快速入门
  17. [luogu P3786]萃香抱西瓜 [spfa][状态压缩]
  18. Git -> Can't start Git: git.exe
  19. [HNOI 2001]产品加工
  20. IE缓存查看的方法

热门文章

  1. 【LeetCode】4. Median of Two Sorted Arrays(思维)
  2. python3 多线程爬虫模板
  3. LinkedList类详解
  4. Benjio0-Curriculum Learning 2009
  5. 微服务面试必问的Dubbo,这么详细还怕自己找不到工作?
  6. PictureCleaner 官方版 v1.1.3.04061,免费的图片校正及漂白专业工具,专业去除文档图片黑底麻点杂色,规格化A4、B5尺寸输出,还你一个清晰的文本。
  7. Img2Latex 临时方法
  8. IDEA使用JFX的相关问题
  9. 工作区和GOPATH
  10. redhat7.6 安装 Python 3