作者:Attect阅读:1965
发布/修定:2016-11-10 23:38/2018-03-29 19:21
本文内容禁止转载、引用!如有需要,请使用本页网址

第九节 成为造物神

本节开始进入学习如何成为神的部分。
这很科学,也很魔法。
五花肉:开始魔幻起来了。

注意:本节录像时最后部分录音用的手机炸了,补录时意外跳过了一个小部分,在本文档后部份有补充
本节内容为了照顾新手,使用很多非标准的描述。
再次重申第七节的一个内容:本教程与其它专业性质的教程套路不一样!
不要忘了本教程视频为主,文档为辅,单看文档基本无法理解

一、造物神

当你开始接受面向对象的编程思想的灌输时,即开始成为造物神的道路。
五花肉:今天是传教主题是吗Orz

1.1 造物神能做什么

能在代码环境中创造任何东西。无论功能简单还是复杂、有形还是无形、世界上存不存在,以及合不合理现实万物法则。
制约你创造的限制的就是你的脑洞大小、运行时的各个处理器性能以及各种储存空间大小。
五花肉:脑子里的东西,你懂的,基本没什么“限制”

1.2 造物神的法术步骤

1、需要掌握将想法变成设计图的技能(本节内容)
2、需要掌握将设计图转变成实物并进行使用的技能(下节内容)

五花肉:感觉更像是开工厂。不过学会如何设计是很重要的,有时候你明明有一个想法却不知道从何做起,就是没有设计好或者根本没有设计。

1.3 科学的叫法

如果你觉得本节内容太过于魔幻,下面给出常规的叫法

本节叫法常规叫法原称备注
造物神程序员
就是你
设计图class可以理解为类别的类
实物对象Object不是男女朋友那个

五花肉:这么高大上的程序员,别的地方你见得到吗

二、设计图格式

本教程虽然称为设计图,但是这个图是没有图画的,使用文字和代码块组成

设计图可以有三种完成度

  1. 完整(class) 【本节内容】

  2. 半成品(abstract)

  3. 概念(interface)

半成品和概念在未来的课程中会有所讲解。
本节只提完整的

五花肉:这节主要讲的是如何写一个类

2.1 基本格式

下面是一个格式描述
多照葫芦画瓢即可掌握

class  名称{    //这行是注释(笔记),运行时会被无视    
    //首先使用变量书写出这个东西的需要拥有参数值    //这里的变量能在所有方法内使用,并可以被修改    //根据实际情况来选择变量的类型    int number = 1;     //使用上一节的“方法”来表示这个物体应该有的功能    boolean isReady(){        return false;
    }
}

2.2 文件创建

注意跟随视频中的创建方式就能保证正确的创建

如果你需要改名,有两种方法:
1、右键左侧项目管理中的这个文件,选择Refecter->Rename,在弹出的对话框中重命名
2、光标定位到class后面的名称,按下Shift+F6组合键,直接编辑修改

这些操作都为了保证一个事情:文件名和设计物体(类)的名称保持一致
同时这个重命名方法会自动修改所有与之相关联的代码以及其它东西

五花肉:还是老规矩,建议新手通过rename修改名称。文件名和类名一致很重要。

2.3 视频中编写的手机设计图以及遗漏补充

/**
 * Created by luoyo on 2016/11/1.
 * 这是一个超级牛逼的手机
 */class Mobile{
    String logo="Attect";    int weight=1;    //单位是克    int cameraNumber=2;    int fontCamera=2000;//单位:万像素    int backCamera=5000;    float screenSize=5.2f; //单位:英寸    int screenWidth=4096;    int screenHeight=2160;    int price=0;    int storageSize=1024*1024;//GB    //打电话    void call(String number){
        explode();
    }    //开机    void turnOn(){
        explode();
    }    //关机    void turnOff(){
        explode();
    }    //爆炸    void explode(){
        System.out.println("Boom!");
    }
}

补充:call、turnOn、turnOff三个方法都设定为调用explode爆炸方法
视频因为录音的手机爆炸而导致丢失,补录时进度估算错误,少了这一点点内容

三 命名规则

本处提及的是规范命名规则,不是“正确”命名规则,如果你发现取名后被画上红色波浪线,那么你就需要换一个名称。
保持一个良好的命名方式可以防止别的程序员在看到你的代码后暴打你一顿

五花肉:而且这也能提高biger(主要是为了可读性以及规范性,这两点在正常开发生产过程中很重要)。

3.1 class后面跟的名称

  1. 大写开头

  2. 多个英文单词,每个英文单词都应该第一个字母大写,例:SmartPhone(智能手机)、RedApple(红苹果 )、CrazyCEO(疯狂的首席执行官)、UDisk(U盘)

3.2 变量

所有普通变量(未来会接触特殊用途的),第一个单词的第一个字母小写(原本就是大写的英文缩写除外),其余每个单词的第一个字母都大写
例:screenSize(屏幕尺寸)、myTeacher(我的老师)、PEClass(体育课)

五花肉:也就是比较常见的驼峰法

3.3 方法

与变量名称类似,但以后会介绍一些约定俗成的专有方法命名规范

3.4 为什么极力避免使用拼音

你无法快速判断一个叫做fangHuo的方法是“防火”还是“放货”还是“放火”
YiJiNiHenNanYiYanJiuKanChuZheJuHuaDeYiSi

五花肉:这也是中文作为开发语言的话面临的主要问题——博大精深

3.5 可以使用中文么?

答案是可以的,本文第二点的设计图格式那个代码放到工程中不会出错,但是,如果你不嫌切换输入法麻烦、以及碰到一些莫名其妙的问题(毕竟整套开发东西都是老外弄的,没考虑亚太语言)
是的,使用中文后可以鄙视易语言,但你会遭到别的Java程序员的殴打

五花肉:我觉得会因为可读性和执行效率问题而被记仇导致持续殴打

四 注释

注释通常用于对文章进行注解标记
因此也可以称为笔记
在代码中经常使用注释来确定一些多意义的东西的具体意义
以及为了他人阅读代码带来方便
最重要的是为了防止自己忘了为什么这么写
代码三天不见,必当不是自己写的相见
超过三天不看某一段代码后很容易忘记其编写时注意了的细节

五花肉:这个是真的

4.1 在代码中增加单行注释

在一行中输入//后面跟上内容即可
注释的内容在编辑器中显示为灰色

五花肉:即不被执行

4.2 在代码中增加多行注释

标准写法:

/*开头
中间这里
书写注释内容
*/结尾

扩展写法:

/**开头
* 中间这里
* 书写注释内容
**/结尾

这么写是为了美观

4.3 适合文档的写法

以后会有专题

五花肉:当然了,注释内容也可以写一些奇怪的东西