how2j.cn


工具版本兼容问题
本章节会引入面向对象的基本概念 (但是不会深入展开,仅仅是引入. 深入的学习会在后续的类和对象以及接口与继承 中展开)

相信你肯定玩过DOTA或者LOL,没玩过,也一定听说过身边有很多的朋友在玩这款游戏的

假设,我们要设计一个LOL这样的游戏,使用面向对象的思想来设计,应该怎么做?

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



7分55秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)



步骤 1 : 设计英雄这个类   
步骤 2 : 创建具体的英雄   
步骤 3 : 类的第一个字母大写   
步骤 4 : 练习-Item   
步骤 5 : 答案-Item   

步骤 1 :

设计英雄这个类

LOL有很多英雄,比如盲僧,团战可以输,提莫必须死,盖伦,琴女
所有这些英雄,都有一些共同的状态
比如,他们都有名字,hp,护甲,移动速度等等
这样我们就可以设计一种东西,叫做类,代表英雄这样一种事物
类: 英雄(Hero)
状态: 名字, 血量,护甲,移动速度

注: 本例用到了3种数据类型 分别是 String(字符串),float(浮点数), int(整数),本章只做简单的使用 ,就不展开了,关于变量知识的详细讲解,将在下个章节展开.
注: 这个类没有主方法,不要试图运行它。 并不是所有的类都是有主方法的。
设计英雄这个类
public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 }
public class Hero {
	
	String name; //姓名
	
	float hp; //血量
	
	float armor; //护甲
	
	int moveSpeed; //移动速度
}
步骤 2 :

创建具体的英雄

类就像一个模板,根据这样一个模板,可以创建一个个的具体的英雄
一个个具体的英雄,就叫一个个的对象
new Hero() 就是java中创建一个英雄对象的意思
创建具体的英雄
public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 public static void main(String[] args) { Hero garen = new Hero(); garen.name = "盖伦"; garen.hp = 616.28f; garen.armor = 27.536f; garen.moveSpeed = 350; Hero teemo = new Hero(); teemo.name = "提莫"; teemo.hp = 383f; teemo.armor = 14f; teemo.moveSpeed = 330; } }
步骤 3 :

类的第一个字母大写

好的编程习惯会让代码看上去更清爽,易读,容易维护
比如类的第一个字母大写
Hero
public class Hero { }
public class Hero {

}
步骤 4 :

练习-Item

Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
设计出物品这种类
类名:Item
物品有如下属性:
名字 name 类型是字符串String
价格 price 类型是整型 int

创建(实例化)3件具体物品
名称 价格
血瓶 50
草鞋 300
长剑 350
步骤 5 :

答案-Item

在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

2分16秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)


注: 创建Item这个类的时候,必须写在一个Item.java的文件里,不可以使用其他文件名,大小写也要保持一致,不能是item.java
public class Item { String name; int price; public static void main(String[] args) { Item potion = new Item(); potion.name= "血瓶"; potion.price =50; Item shoe = new Item(); shoe.name= "草鞋"; shoe.price =300; Item sword = new Item(); sword.name= "长剑"; sword.price =350; } }
public class Item {
	String name;
	int price;
	
	public static void main(String[] args) {
		Item potion = new Item();	
		potion.name= "血瓶";
		potion.price =50;
		
		Item shoe = new Item();	
		shoe.name= "草鞋";
		shoe.price =300;
		
		Item sword = new Item();	
		sword.name= "长剑";
		sword.price =350;
		
	}
}


HOW2J公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2018-10-12 交作业啦
Yuzuki丶



也不知道对了没对
public class LEI {
    string name; //名字
    int price; //价格
public static void main(String[] args){
    LEI blood = new LEI;
    blood.name = "血瓶";
    blood.price = 50;

    LEI shoes = new LEI;
    shoes.name = "草鞋"
    shoes.price = 300;

    LEI sword = nwe LEI;
    sword.name = "长剑"
    sword.price = 350;
    

    }
}

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2018-10-12 打卡交作业啦
浪子心声



交作业,加油
package Item;

public class Item {
	String name;//名字
	int price;//价格
	public static void main(String[] args) {
	Item blood = new Item();
	blood.name = "血瓶";
	blood.price = 50;
	Item shoes = new Item();
	shoes.name = "草鞋";
	shoes.price = 300;
	Item sword = new Item();
	sword.name = "长剑";
	sword.price = 350;
	System.out.println(blood.name+"的价格是"+blood.price);
	System.out.println(shoes.name+"的价格是"+shoes.price);
	System.out.println(sword.name+"的价格是"+sword.price);
	}
	

}

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2018-10-08 输出的界面不够美观
2018-10-06 交作业啦啦啦啦
2018-10-05 交作业
2018-09-29 打开,交作业
2018-09-20 初学者交作业。。。。
2018-09-18 java - Eclipse 哪里可以下载
2018-09-18 小白交作业
2018-09-17 作业
2018-09-15 我想加入你们
2018-09-14 无意中来到这个网页 这里是java教学吗
2018-09-14 无意中来到这个网页 这里是java教学吗
2018-09-13 第一次交作业
2018-09-10 求大神告诉我代码比较中这个错误怎么改
2018-09-10 求大神告诉我代码比较中这个错误怎么改
2018-09-09 交作业
2018-08-27 public class Hero 的hero是类,但是它跟C#有什么区别
2018-08-25 交作业
2018-08-24 交作业
2018-08-22 交一波作业
2018-08-22 交作业
2018-08-22 ...
2018-08-21 j交作业
2018-08-20 交作业
2018-08-17 打卡,交作业
2018-08-17 打卡,交作业
2018-08-06 打卡,交作业
2018-08-03 打卡交作业
2018-07-26 小白交下作业
2018-07-26 为什么报错
2018-07-26 是不是要添加System.out.print才能运行呢?
2018-07-24 交作业
2018-07-24 交作业
2018-07-22 JAVA软件
2018-07-21 代码运行异常
2018-07-21 代码运行异常
2018-07-20 180720-练习
2018-07-20 交作业
2018-07-18 交作业
2018-07-17 【学习总结】
2018-07-17 交作业
2018-07-13 交作业咯
2018-07-12 jse basic hello world
2018-07-07 作业
2018-07-02 跟站长学java,交作业
2018-07-02 交作业
2018-07-01 写作业
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 控制台显示“编码GBK的不可映射字符”错误
2018-06-27 交作业
2018-06-26 交作业 大佬们帮忙看看
2018-06-21 作业
2018-06-15 萌新写的作业。。
2018-05-30 我这么写可以吗
2018-05-28 刚刚写的,大佬勿喷
2018-05-24 交作业
2018-05-21 交作业,我会在自学编程这条路上走下去。希望各路大神多多关照!
2018-05-08 我按照步骤做了,可是什么都看不到,求解,老师
2018-05-07 double 到底表示的是什么呢
2018-05-03 用含参构造赋初值
2018-04-21 这个类不是有主方法吗?
2018-03-28 提交作业item类的创建
2018-03-27 作业?还有人看到吗
2018-03-17 price价格保留小数怎么写?比如血瓶价格 49.99
2018-03-17 price价格保留两位小数怎么写
2018-03-08 作业-Item
2018-03-05 练习-Item
2018-03-05 练习--Item类
2018-02-21 我是不是有点傻。。。。。
2018-02-06 哪里有更多的习题,总感觉要多练习
2018-01-18 评论区有提供答案就好了
2017-12-31 主方法main为什么在"创建具体的英雄"前面出现,换句话说为什么"创建具体的英雄"要运行,"创建类"就不用运行呢?
2017-12-24 怎么运行总出错那?
2017-11-27 lol
2017-11-25 我这样写是不是复杂了,有冗余啊
2017-11-15 mian 调用的快捷键
2017-11-15 编写问题
2017-11-14 这样写是否也能满足要求
2017-10-22 求助 控制台显示terminated
2017-10-20 作业
2017-10-17 不能进入创建的项目中
2017-10-10 盖伦英文名字出错
2017-10-02 测试类与实体类放在一起也可以吗?
2017-09-29 加了私有标识符就一定写这么多吗?好麻烦啊。
2017-09-19 运行错误。。。。
2017-09-16 =
2017-09-16 关于浮点数
2017-09-14 recovery一直报错。不明白原因
2017-09-05 请问“有new才有对象”这种说法对吗?
2017-08-25 界面出现这个是为什么,要怎么解决
2017-08-05 老师,你英雄属性后面的小数点是什么意思,为啥我不加小数点也可以呢?
2017-08-01 参考
2017-07-21 站长的类图是用什么软件画的?感觉比Visio和Rose清爽多了,跪求。
2017-03-17 作业答案代码
2017-02-24 作业
2017-02-24 老师,作为java程序执行入口的主方法main函数,不可以写在别的普通方法中吧
2017-02-19 打卡
2017-01-02 练习
2016-12-20 代码无错,为啥运行结果是什么都没有啊?