ok了家人们今天我们继续学习方法的更多使用,闲话少叙,我们来看今天学了什么
1.重载
在同一个类中,可不可以存在同名的方法?
重载:在同一个类中,定义了多个同名的方法,但每个方法具有不同的参数类型或参数个数,
这些同名的方法,就构成了重载关系
简单说:[同一个类中],方法名相同,参数列表不同(参数类型不同,参数个数不同,参数顺序不同)
好处:不用记忆繁琐的方法名字
来个例子
可以看到,我们创建了4个方法,方法名都相同,就是数据类型和数据名不同,就构成了重载关系。
2.面向对象
我们用一个例题来解释
①打印数组中所有的元素,打印格式为: [元素1,元素2,元素3,元素,...,元素n]
我们从打印输出的结果是一样的
两种方法,
第一种,
用for循环去做,当索引为0时,打印右边框和逗号,打印到数组最后一个数时加左边框,再打印输出换行。这种是不是写起来太繁琐了,那我们有另一种。
第二种,
直接输出打印 (System.out.println(Arrays.toString(arr));)
②
面向对象就是找到对象帮你做事情---》如果对象不存在---》自己定义对象---》先定义类,才能创建对象
类是用来描述一类拒用共同属性和行为的统称
类由属性和行为组成
属性:描述是事物的状态信息 成员变量 String color;
行为:该事物可以做什么事情 成员方法 public 数据类型 方法名(参数){ return 数据;}
定义类的步骤
1.定义类 public class 类名{}
2.编写类的成员变量
3.编写类的成员方法
例子上来个
对象是类的一个实例,具备该类事物的属性和行为
对象的创建和使用(前提条件得由类)
创建对象
类名 对象名=new 类名();
对象的使用
访问成员变量
a.获取成员变量的值 对象名.成员变量名
b.设置成员变量的值 对象名.成员变量名=值;
访问成员方法
对象名.成员方法名();
new:创建 每new一次就会创建一个新的对象,
每个对象都会有自己的成员变量和自己的成员方法
ok了我们带着上面的知识来做今天的题目吧
3.每日作业
①,自定义一个方法,实现求一个数组的最大值,并且把最大值返回,定义main方法,调用上面的自定义方法
我们先自己定义arr类,定义Array方法,
1,定义最大值max,定义数组,是最大值先为索引为0的值,
2,for循环,i的范围和数组的长度相同,
3,if语句,当数组里的值大于max时,max等于它,继续循环,直到找到最大值为止,
4,输出打印,返回max的值
再到主方法来使用,
1,创建Arr类的对象,(就像创建随机数一样 Randon r = new Random , r.nextInt();)
2,使用Array方法,输出打印。
② ,数字是有绝对值的,负数的绝对值是它本身取反,非负数的绝对值是它本身。请定义一个方法,方法能够得到小数类型数字的绝对值并返回。请定义方法并测试
先创建方法,题目要求用小数做就用double
1,创建getNum方法,
2,if语句,如果num<0,则得到它的相反数,其他都等于他本身,
3,输出打印,返回num的值
1,创建Absolute的对象,
2,输出打印
③,请定义教师类(Teacher),属性包括姓名和工号,定义教课(teach)方法,最后输出:工号为 20191024 的 HaiCoder 老师正在讲课。
根据题目,我们创建了一个教师类,一个teach方法
1,定义数据类型和变量名,
2,输出打印
输入ID和名字,得到结果
④,定义一个女朋友类。女朋友的属性包含:姓名,身高,体重。行为包含:洗衣服wash(),做饭cook()。另外定义一个用于展示三个属性值的show()方法。请在测试类中通创建对象并赋值,然后分别调用展示方法、洗衣服方法和做饭方法。打印效果如下:
根据题目,定义一个类,属性,定义三个方法
1,第一个类,定义三个数据,输出打印
2,wash方法,输出打印
3,cook方法,输出打印
调用方法,得到结果,
ok了家人们明天见🙃