狼人杀与血染钟楼的【JAVA面向对象】————类和对象
目录
- 一、类
- 1.什么是类
- 2.类的定义
- 3.类的构成
- 二、对象
- 1.什么是对象
- 2.对象的实现
- 三、static
一、类
1.什么是类
天黑请闭眼!
现在是狼人杀的时间,好了,现在你拿的身份是狼人。你的技能是夜晚可以杀死一个人,你的狼队友是他和她,你们的目标是杀死所有好人获得胜利。
是不是突然感到很困惑:这和类和对象类和对象类和对象有什么关系?巧了,还真有关系,听作者细(强)细(扯)道(关)来(系)。
在狼人杀中,狼人牌属于类。狼人牌的作用仅仅是上帝用来确定哪名玩家是狼人,转到类和对象上就是狼人牌是上帝用来实例化狼人的类。于是我们得到这样一个结论:
类是对象的抽象
2.类的定义
类的定义用class关键字,下面展示的是狼人类的部分定义
public class wolf{private boolean skill;private int[] number=new int[10];private killer;{skill=true;for(int i=1;i<11;i++){number[i]=0;}killer=-1;}public wolf(int...numbers){System.out.print("你的狼队友是:");for(int num:numbers){System.out.print(num+"号 ");number[num]=1;}System.out.println();}public void kill(int n){killer=n;System.out.println("今晚你们要杀的对象是:"+n+"号");}}
我们定义了一个私有整型变量killer表示狼人每一晚要杀的对象;一个布尔型变量skill表示当前技能是否能发动;一个构造函数(后面会介绍构造函数)wolf来接收狼队友。除了以上必须的定义外,我们还定义了一个夜晚杀人的方法(必须性是相对于类的定义,而不是狼人杀)。
通过上面对狼人类的定义,我们可以发现,类中包含了狼人共有的一些基本属性(比如夜晚都能杀人,但是杀哪一个人是具体到某个狼人玩家决定的,而不是类所决定的)。类的作用就是抽象对象的属性(简单来说就是定义一个对象所具有的属性而不赋值)。
3.类的构成
- 关键字class关键字class关键字class(必不可少的)
这是用于表明你写的代码块为类的定义。 - 访问权限控制符pulic访问权限控制符pulic访问权限控制符pulic(可以缺省的)
这是用于控制对当前类的访问权限,public表示自身,同包类,其他类都可以访问当前类。 - 构造和析构函数构造和析构函数构造和析构函数(必不可少的但可以不写)
用于初始化对象,编译器会默认加上无参构造和析构函数。
对不起,Java没有析构。
二、对象
1.什么是对象
对象是类的实例化
我们先抛出这个结论,其实上面介绍类的时候,就提到了对象。狼人就是一个对象,注意,狼人是对象,狼人牌是类!狼人是指具体到某个玩家了。当你玩狼人杀的时候拿到狼人牌了,就代表你是狼人这个类的一个实例化对象了。
对象是类的实例化,对象需要对类中所拥有的属性(成员变量)进行赋值,对象相当于一个用户自己定义类型的变量。
2.对象的实现
这里我们定义两个wolf类的对象,分别为wolf_one和wolf_two。
wolf wolf_one=new wolf(3);
wolf wolf_two=new wolf(2);
wolf.kill(4);
wolf.kill(4);
实例化类的对象基本格式为:类名 变量名 = new 类名();
访问对象的成员时使用(.)运算符。
三、static
ps: mainmainmain方法前的staticstaticstatic有什么作用?不加上行不行?
答:static表示这个main方法是静态的,整个进程只会创建一份main方法。
main方法前必须加static,毕竟如果是非静态的main方法可以有0-∞个,鬼知道调用哪个!
狼人杀与血染钟楼的【JAVA面向对象】————类和对象相关推荐
- java面向对象-类和对象
Java面向对象笔记 文章目录 Java面向对象笔记 java面向对象 类和对象 什么是类 定义 创建和使用 公式 构造方法 什么是构造方 怎么定义和使用构造方法 实列 This关键字 什么是成员变量 ...
- 7.0_[Java 面向对象]-类和对象
################################################## 目录 面向对象扫盲 万物皆对象 分类思想 对象的属性与方法/实例的特征和行为 如何在 Java 中 ...
- Java面向对象 类、对象、构造方法、封装
第1章 面向对象基础 1.1 编程思想概述 1.1.1 面向过程思想概述 我们回想一下,这几天我们完成一个需求的步骤:首先是搞清楚我们要做什么,然后在分析怎么做,最后我们再代码体现.一步一步去实现,而 ...
- 18、Java面向对象——类和对象的关系及应用、对象数组的应用
目录 课前先导: 一.什么是类? 二.类的创建 三.什么是对象? 四.对象的创建.赋值:方法的调用 五.定义类和对象的三种方法 六.对象数组 七.来了,你们要的对象 课前先导: 在刚开始学习java的 ...
- 头歌(EduCoder)实训项目-Java面向对象-类与对象
第1关:什么是类,如何创建类 任务描述: 本关任务:创建一个类和一个对象,调用这个对象的属性和方法. 编程要求: 根据提示,在右侧编辑器Begin-End处补充代码: 声明一个Dog类,给Dog类添加 ...
- 头歌(educoder)第 5 章 Java 面向对象之类和对象 Java面向对象 - 类与对象
目录 第1关:什么是类,如何创建类 第2关:构造方法 第3关:选择题(一)编辑 第4关:This关键字 第5关:类与对象练习 第6关:static关键字 第7关:选择题(二) 第1关:什么是类,如何 ...
- 头歌实践教学平台:Java面向对象 - 类与对象
第1关:什么是类,如何创建类 本关任务:创建一个类和一个对象,调用这个对象的属性和方法. package step1;public class Test {public static void mai ...
- Educoder - Java面向对象 - 类与对象各关卡题目总结
第1关:什么是类,如何创建类 1.编程要求: 根据提示,在右侧编辑器Begin-End处补充代码: 声明一个Dog类,给Dog类添加三个String类型的属性,分别是name,color,variet ...
- Java面向对象 - 类与对象
第1关:什么是类,如何创建类 任务描述 本关任务:创建一个类和一个对象,调用这个对象的属性和方法. 相关知识 为了完成本关任务,你需要掌握:1.什么是类和对象: 2.怎么定义类: 3.怎么创建对象并使 ...
最新文章
- 技术图文:进一步完善自动化交易系统 - 04
- Journal of Genetics and Genomics科学编辑招聘启事
- 没有足够的系统内存来运行此查询。
- 我月入过万,送着外卖写着诗
- 《系统集成项目管理工程师》必背100个知识点-79版本控制流程
- 服务器账户登录监控系统,服务器账户登录监控系统
- NXP(I.MX6uLL)DDR3实验——DDR3初始化、校准、超频测试
- ionic android 本地存储,ionic2/3本地数据存储storage
- C++ vector越界的问题
- java中char和string的区别是什么
- 4号线地铁站点列表_【暖房】6号线酒店式白领公寓;房山地铁站品牌公寓;4号线分散式公寓;朝阳门附近整租房源...
- CSAPP第八章家庭作业参考答案
- 网络工程师中级--下午科目
- 成都一名程序员跳楼,程序员眼中的成都和天府软件园
- emmc/ufs, sd
- 富格林金业:新手投资贵金属容易亏损的原因
- 什么是看门狗?如何操作?喂狗?工作流程?定时器,计数器,看门狗的关系。
- 旺店通·企业奇门与金蝶云星空对接集成查询采购入库单连通采购入库新增(采购入库单 all)
- Latex公式内行间距,字体大小控制
- 【dp - 多重背包】575: Coin Changing