我计划将每天Java学习的知识进行重新整理并输出,加入自己 的思考和理解,仅作为个人参考用,各位请轻喷。
我学习的课程是Udemy上的Tim Bachalka讲的“Complete Java Masterclass”课程,共计24章节,330集教程,每集10到30分钟时长。截止到今天,我学习到第9章中的Linkedlist(链表),前面的8个章节的主要内容有:
1.必需软件下载和安装
2.软件介绍
3.Java语言的变量,数据类型和操作符
4.表达式,声明,代码区块,方法
5.流程控制语句
6.面向对象编程(Object Oritended Progarmming)的重要内容,类、构造函数和继承,组合,封装及多态性。
今天的学习笔记会涵盖上述大部分内容,因为我还在自己写代码进行练习,有些内容还需要再咀嚼后才能深刻领会,暂时不写出来,后面再补充。
今天的学习笔记我以Q&A的方式进行梳理。
1.Java语言的重要理念是面向对象,它给出了哪些概念来描述对象?
类似于中国古人将用金木水火土这五行和阴阳两极去观察世界一样,Java提供了8种基本数据类型作为对万事万物者描述的基石,它们分别是:
Int,Short,Byte,Long,Float,Double,Char和Boolean,
前4种适用于不同数量级的整数,Float和Doulbe适于不同数量级的含小数部分的数值,Char适于单个字符,Boolean适用于逻辑判断的真假。
同时,当我们由孩童成长为有独立思考能力的人时,我们会学会对事物作抽象,将某一类具有共同特征的东西抽象为同类,Java也提供了Class,Method和State这一套东西,让我们可以有效地来描述抽象化的事物。
具体来说,Class包含了State是对某类事物特征的概括,比如针对汽车,可以有排量,品牌,引擎类型,汽缸数,载客量等特征,而Method是对某类事物的行为方式的描述,同样是以汽车为例,可以有启动,加速,刹车,转向,倒车等。
但需要注意的是,Class只是模板,而不是实例,我们需要使用Class来创建实物,然后才能对它们进行各种操作。
2.Java是如何体现所描述对象的各种联系的?
类似于MinceCraft中的创造与破坏一样,制作钓竿,护具,伐木,建造房屋,总要进行各种运算,因此,Java也提供了基本的各类运算符,它们分别是:
算术运算符: 加减乘除求余 +-*/%,以及自增++和自减
赋值运算符: =,以及相关变种+=,-=,*=,/=和%=。
逻辑运算符: 针对位运算的与&, 或|, 非!,针对语句的与&&,或||和?:三元运算,
以及大小比较的==,>=,<=,!=,>和<.
位运算符还有左移<<,右移>>和高位用0补全>>>。
有了这些,我们就可以像小学生一样,可以针对已有的对象进行各种运算了。
为了表征处理实际问题时,如排序,点餐,计算所得税等,所需要的算法,以及其中的Process flow chart,我们可能还需要借助以下工具:
1.变量,用于过程计算和结果计算
2.控制语句,包括但不限于Do While语句, For循环语句, Switch语句等。
3.继承,在原有定义的Class上进行拓展和更新,比如在福特汽车可以继承汽车Class的一些属性,波音747可以继承民航客机Class的一些属性。
4.构造函数,便于我们进行实例对象的初始化。
5.组合(Composition),用于将某几个组件Class的特征组合至一个对象中。
而Java的IDE (Intergrated Development Environment)软件,教程中给出的IntelliJ IDEA使用起来也非常顺手,截图展示一下。
是根据老师课堂上给出的题目,我自己联想的,计算拱猪游戏中某位玩家的总得分,还是比较简单的,使用了几个知识点:
1.Int型数据
2.For循环语句
3..获取键盘录入内容
4.用户录入内容和结果的输出显示
今天的学习笔记就到这里,明天继续!