java---day01

Shoot射击游戏第一天:
1.创建6个对象类,创建World类测试


正课:
1.什么是类?什么是对象?
  1)现实世界是由很多对象组成的
    基于对象抽出类
  2)对象:真实存在的单个的个体
    类:类型/类别,代表一类个体
  3)类中可以包含:
    3.1)所有对象所共有的属性/特征----------------成员变量
    3.2)所有对象所共有的行为---------------------方法
  4)一个类可以创建多个对象,
    同一类型的多个对象,结构相同,数据不同
  5)类是对象的模板,对象是类的具体的实例
2.如何创建类?如何创建对象?如何访问成员?






需求:
1)共3种敌人(小敌机、大敌机、小蜜蜂)
  英雄机可以发射子弹,子弹可以打敌人:
  1.1)打掉小敌机-----------玩家得1分
  1.2)打掉大敌机-----------玩家得3分
  1.3)打掉小蜜蜂-----------英雄机得奖励(1条命、40火力值)
2)英雄机默认3条命,默认火力值为0(单倍火力)
  当火力值大于0时,为双倍火力,发一次双倍火力,则火力值减2
3)敌人可以和英雄机撞,与英雄机撞上之后:
  3.1)英雄机减1条命,并且,火力值归零
      当英雄机命数为0时,游戏结束
4)所有飞行的对象都是在天空上飞的

1)找对象:英雄机、子弹、小敌机、大敌机、小蜜蜂、天空
2)抽类:Hero、Bullet、Airplane、BigAirplane、Bee、Sky
3)设计类中的成员变量和方法:
4)创建对象并测试:

class Hero{ //英雄机
  x,y,width,height,life,doubleFire
  void step(){ //切换图片
    hero0和hero1切换
  }
  void moveTo(int x,int y){ //英雄机随着鼠标动
    
  }
}


MyShoot
cn.tedu.shoot
Hero
Airplane
BigAirplane
Bullet
Bee
Sky



















class Airplane{
  width,height,x,y,speed
  void step(){
    
  }
}


Hero:
  width,height,x,y,life,doubleFire,step(),moveTo(int x,int y)
Airplane:
  width,height,x,y,speed,step()
BigAirplane:
  width,height,x,y,speed,step()
Bee:
  width,height,x,y,xSpeed,ySpeed,awardType,step()
Bullet:
  width,height,x,y,speed,step()
Sky:
  width,height,x,y,speed,y1,step()
World:
 















class BigAirplane{
}
class Bee{
}
class Bullet{
}
class Sky{
}
























Student zs = new Student();

















            引用
数据类型  引用类型变量   指向    对象
Student     zs            =    new Student();



     基本类型变量(变量)
int    a;













zs.name = "zhangsan";
zs.age = 25;















null

Student
StudentTest



oo.day01

















  类               对象
月饼模子           月饼














Student zs = new Student();
zs.name = "zhangsan";
zs.age = 25;
zs.address = "河北廊坊";
zs.stuId = "111";
zs.eat();
zs.sleep();
zs.study();
zs.abc = 250; //编译错误,没有abc这个属性

Student ls = new Student();
ls.name = "lisi";
ls.age = 27;
ls.address = "黑龙江佳木斯";
ls.stuId = "222";
ls.eat();
ls.sleep();
ls.study();

class Student{
  String name;
  int age;
  String address;
  String stuId;
  void eat(){}
  void sleep(){}
  void study(){}
}








Student zs = new Student();
Student ls = new Student();
Student ww = new Student();
Student zl = new Student();















class Teacher{
  String name;
  int age;
  String address;
  char gender;
  double salary;
  void eat(){}
  void sleep(){}
  void teach(){}
}
class Dog{
  String type;
  String color;
  void 叫(){}
}
class Car{
  String type;
  String color;
  double price;
  void run(){}
  void back(){}
  void stop(){}
}


对象                   类
WKJ                    老师
GJ
GT

张三                   学生
李四
王五

小花                   狗
小黑
小强

奥迪                   汽车
奥拓
马六




















class Emp{ //Emp就是我自己创建的一个数据类型---雇员
  String name;
  int age;
  double salary;
  void print(){
    System.out.println("姓名:"+name);
    System.out.println("年龄:"+age);
    System.out.println("工资:"+salary);
  }
}
class Test{
  public static void main(String[] args){
    Emp ee = new Emp(); //创建了一个雇员对象
    ee.name = "zhangsan";
    ee.age = 25;
    ee.salary = 5000.0;
    ee.print();
  }
}





基本数据类型----------------只能装一个数据
数组------------------------必须类型相同的数
自己造个数据类型------------想装什么就装什么


面向过程的弊端:
1)缺乏对数据的封装
2)数据和方法(操作数据)的分离




















高质量的代码:
  复用性好、扩展性好、维护性好、
  可移植性好、健壮性好、可读性好、效率好...
















清华思路-------------环保、GIS
开发-------40多人,项目多
设计者----------------抽了4个人(花费2个月时间做了一套框架)

福州夜间施工项目----------加功能
30万

我一个人,每天最多一个小时,5天搞定了
-------------------------------------------5个小时
















某和----------OA办公系统(.net做的)
Java做的-------了解

A公司:改一点
B公司:改一点
C公司:改一点

















产品-----------适应很多家公司的
项目-----------只能适应一家公司的















面向对象:OO

OOA:面向对象分析
OOD:面向对象设计
OOAD:面向对象分析与设计
OOP:面向对象编程------------------你们所参与的














晕乎乎的过来的--------------------正常的

不晕不正常:
1)什么也不会
2)自以为不晕-----------------很不错很不错的状态




















语言基础:
1)固定的(画一个圆形)
2)去银行取钱

面向对象:难
1)抽象的(画一个图形)
2)向着社会主义社会发展









猜字符小游戏
射击游戏














面向过程编程
面向对象编程













贯穿项目------------理论+项目
面向对象10天























posted @ 2018-04-21 20:55  renpfei  阅读(157)  评论(0编辑  收藏  举报