Java教程

学习Java第12天笔记

本文主要是介绍学习Java第12天笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

day12文字笔记

知识回顾:
1、package和import

2、访问控制修饰符

3、final:

4、static:

正课内容:
1、static final常量

2、抽象方法:
设计规则:
1)将派生类所有共有的属性与行为抽到超类中—抽共性
2)派生类的行为都一样,设计为普通方法。派生类的行为不一样,设计为抽象方法
由abstract修饰,只有方法的定义,没有具体的实现
3、抽象类:
由abstract修饰
包含抽象方法的类必须时抽象类
抽象类不能被实例化(不能new对象)
抽象类是需要被继承的

***抽象方法存在的意义是什么?
答:当向上造型时,通过超类的引用能点出方法来,但具体执行的是派生类重写之后的----意义在于保证能点出来

***若抽象方法的意义仅为能点出来,那为何不设计普通方法?
答:当设计为抽象方法,可以强制派生类必须重写,而普通方法是达不到强制重写的效果的----意义在于强制必须重写


***抽象类的意义:
1.封装共有的属性和行为----超类意义代码复用
2.为所有的派生类提供统一的类型---向上造型
3.可以包含抽象方法,为所有的派生类提供统一的入口,派生类的具体实现不同,但是入口时一致的(能点出来)
	抽象方法是必须被重写的,普通方法是你可以重写也可以不重写

一个类不能new对象,单独存在是没有意义的

*****潜艇游戏第6天:
画对象—一共需要三个数据(图片,x坐标,y坐标)

1.想画对象需要去获取对象的图片,每个对象都得获取图片,意味着获取图片的行为是共有行为----设计为SeaObject超类中,
每个对象获取图片的行为都不一样,所以设计成抽象方法
2.在7个派生类中重写getImage(),并获取图片
3.画图片时需要去判断对象的状态,因为只有对象活着才画对象,每个对象都有状态,意味着状态为共有属性,所以应该设计在
SeaObject—准备状态,状态一般都设计为常量,同时再设计state变量表示当前状态
—在SeaObject中设计LIFE,DEAD状态常量,state变量表示当前状态
—状态有了还需要进行判断,每个对象都能进行判断,意味着判断对象的行为是共有行为,所以设计在Seaobject中,
每个判断对象的行为都一样,所以设计为普通方法
—在SeaObject中设计isLife()、isDead()判断状态
4.游戏中的对象是可以死并消失的
对象的图片、x坐标、y坐标都有了,就可以开画了,每个对象都可以画图片,意味着画图片的行为是共有行为,所以设计在
SeaObject中,每个对象画图片的行为都是一样,所以设计为普通方法
—在Seaobject中设计paintImage()画图片
—在画图片的时候要求,如果对象活着才画图片

5)画图片的行为做好后,在world中调用即可
—给对象数组填充测试数据
—重写paint()方法:画海洋图、调用paintImage()画图片/对象

这篇关于学习Java第12天笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!