类和对象
我们开发应用时只有现成的对象远远不够,我们要自己构建对象
构造的方法如下:
先说前两部分,我们要构造字段和方法,有了前两部分就可以创建对象。
构造方法就是给字段赋一个初始值。
例:
创建对象的模板如下:
例:
可将创建的三个对象分别赋值给变量,方便后期操作,如下:
总结一下,类就是对象的模板,通过字段来描述这个对象将来是个什么样的,然后用构造方法给这些字段赋初始值。而对象就是一组数据而已
注:字段名和方法参数名一旦重名,方法参数名的优先级更高,两个变量都被当成了方法参数名,如下:
两个brand都被java识别成了方法参数,这个时候我们可以通过this来标记参数名,如下:
抽取方法
方法决定对象后期可以干什么,也就是控制对象的行为
对象演化
static方法调用时,语法是 :方法名(参数)
对象方法调用时,语法是: 对象.对象方法名(参数),如c1.cal(),但是要事先定义一个对象
结论:
快速生成Boot模块
1.新建一个模块,构建系统选择Maven
2.首先先在官网中把项目信息选择一下,注意更改以下两个位置
同时要添加web组件
3.之后将官网生成的配置文件复制到我们模块的配置文件
粘贴到下面的位置
4.最后建一个入口函数,写如下代码:
面向对象代码
计算圆面积原代码
更改后的面向对象代码:
在这里,我们要注意,对象是类的实例,类是对象的模板。构建对象的时候调用的是类,里面的构造函数也就是上图的public Circle(double r )函数,目的是为了传参,就是将我们要定义的外界参数传进对象里,调用该类时就会调用该类的构造函数,有了构造函数,调用对象的时候就必须给构造的参数赋值
在类里定义某个字段给他前面加上static,如图
在之后创建的所有对象里,该字段属性就是相通的,比如创建了两个对象c1和c2,更改c1里的该字段值,c2里的也会被更改,这个字段我们称之为静态变量。访问静态变量我们推荐用类名,不是对象,如上图例子,最好用Circle.pi不是c1.pi或者c2.pi
注:如下图,定义变量的时候写了一个final,这表示变量只能被定义一次,意思是之后这个变量就不能更改了
四种变量的对比
1.方法参数传的变量我们称之为参数变量
2.方法内部的变量我们称之为局部变量
3.对象里的字段我们称之为对象变量(成员变量)
4.变量前面加一个Static我们称之为静态变量
四种变量的作用范围不一样。
方法参数在调用改方法时生效,结束该方法时失效。
局部变量在定义它的时候开始,在到包围他的右花括号时结束。而且局部变量必须赋初值才能用,其他变量不赋值还会有默认值
对象变量从对象创建开始,到对象不能用为止
静态范围从类被加载开始,到类卸载为止,它的作用范围最大。
注:对象变量是每个对象私有的,静态变量是所有对象共享的
继承
定义继承的语法:
有了继承,父类中定义过的字段和方法子类就不用重复定义了,可以直接拿过来用。
但是父类中的构造函数子类不能拿来用,这就要求我们在子类中进行更改,去调用父类的带参构造,用super()来调用,语法如下:
如上图,传参的流程就是,1处定义了b类的的参数name,将定义的“张三“赋值给2,2将它传给3,最后3在传给父类的4,这样参数就传给了父类的字段。