20170811 - 今日技能封装 - Q1
Posted 清及
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20170811 - 今日技能封装 - Q1相关的知识,希望对你有一定的参考价值。
1 涉及到对文件的处理,必须?
2 消敌机游戏编写过程记录
画窗口,使用什么类?
//项目分析
①分析项目内有什么对象
②抽取共同特征到父类中
敌机,蜜蜂,子弹,英雄机皆有
③抽取部分子类共有行为
思维漏洞:
① 新建项目后,新建包类命名方式为 域名反写+项目名 ,漏了后者
② 新建构造,方法公开化,属性私有化,在前面加public,应第一时间加上
③ 在主类中新建对象后直接赋值提示报错——不可直接在类体内赋值,可以赋初始值,但具体的必须到构造中赋值
private FlyObject[] fo = new FlyObject[2];
fo[0] = new Bee();//就立刻下面赋值了!?
fo[1] = new Enemy();
④private FlyObject[] fo = new FlyObject[2];→private FlyObject[] fo = {};
⑤
width = image.getWidth();
eight = image.getHeight();
image = ShootGame.bee;
image = ShootGame.bee;
width = image.getWidth();
eight = image.getHeight();
⑥
public void paintBullet(Graphics g){
for(int i = 0;i < bullets.length;i++){
Bullet f = bullets[i];
g.drawImage(f.image,f.x,f.y,null);
}
}
public void paintBee(Graphics g){
g.drawImage(fo[0].image,0,0,null);
}
⑦(复制粘贴注意)蜜蜂,敌机一直显示在下方→height写在x下面,于是默认便是0
⑧x = rand.nextInt(654-this.width); → rand.nextInt(ShootGame.WIDTH-this.width);
⑨思路要一直都极其清晰,每一步应该做什么,应该怎么做脑中的概念都要非常清楚(try...catch...直接放在了外面)
⑩使用random方法获取整数时,必须用nextInt
思维记录
① 写到英雄机图片属性时,想到需要建主类,通过静态区调英雄机图片
② Bee重写获得奖励方法——返回一个奖励类型的数字,因此需要定义自身属性typeNum
3 提示需要 insert ; 有可能是什么原因?
变量没有声明类型
以上是关于20170811 - 今日技能封装 - Q1的主要内容,如果未能解决你的问题,请参考以下文章