当前位置:   article > 正文

实例方法(instance method)、类方法、构造方法(三)

实例方法

实例方法(没有static)的概念

对象被称为实例。实例相关的有:实例变量、实例方法。实例变量是对象变量。实例方法是对象方法。实例方法没有static。(对象方法,对象级别的方法)

实例方法的调用需要先new一个对象,再通过“引用.”的方式去访问(实例相关的都需要先new对象,通过“引用.”的方式去访问)

实例方法

当一个类创建了一个对象后,这个对象就可以调用该类的方法(对象方法)。

  1.实例方法中可以引用对象变量,也可以引用类变量;

  2.实例方法中可以调用类方法;

  3.对象方法中可以使用super,this关键字。


 今天我们继续讲解实例方法定义语法(三),之前的方法一二都已发过,感兴趣或者不明白的同学,可以查找一下。

方法(三)

方法:

实例方法定义语法:

  1. class 类名{
  2. 访问修饰符 返回值类型 方法名([形参列表]){
  3. // 方法功能实现
  4. }
  5. }

解释:

  1. 访问修饰符:private、默认、protected、public;
  2. 返回值类型:void 无返回值类型;有返回值类型(可以是基本类型和引用类型);
  3. 参数列表:参数可选

实例方法调用语法:

对象名.方法名([实参列表]);

有参无返回值。

示例一:

一个参数。

  1. class MyMath{
  2. /** 方法定义 */
  3. public void setNumber(int number){
  4. System.out.println("数字是:" + number);
  5. }
  6. }
  7. public class TestMyMath {
  8. public static void main(String[] args) {
  9. MyMath myMath = new MyMath();
  10. /** 方法调用 */
  11. myMath.setNumber(55);
  12. myMath.setNumber(66);
  13. myMath.setNumber(77);
  14. }
  15. }

运行结果:

示例二:

多个参数。

  1. class MyMath{
  2. /** 方法定义 */
  3. public void add(int number1, int number2){
  4. System.out.println("相加的结果是:" + (number1 + number2));
  5. }
  6. }
  7. public class TestMyMath {
  8. public static void main(String[] args) {
  9. MyMath myMath = new MyMath();
  10. /** 方法调用 */
  11. myMath.add(11, 22);
  12. myMath.add(33, 44);
  13. myMath.add(55, 66);
  14. }
  15. }

运行结果:

 

注意事项:

带参方法定义:

  1. 可以定义多个参数;
  2. 参数类型可以是基本类型,也可以是引用类型;
  3. 多个参数用逗号分隔;

带参方法调用:

  1. 要指定实际参数;
  2. 实际参数的类型与形式参数的类型要一致。

学完实例方法定义语法,来看几个JavaScript数组reduce的实例方法

1. reduce定义和用法

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 可以作为一个高阶函数,用于函数的 compose。注意: reduce() 对于空数组是不会执行回调函数的。

语法:

array.reduce(function(prev, cur, index, arr), init)

prev (上一次调用回调返回的值,或者是提供的初始值(initialValue))

cur (数组中当前被处理的元素)

index (当前元素在数组中的索引)

arr (调用的数组)

init (传递给函数的初始值)

2.reduce累加

带初始值

  1. var arr = [1,2,3,4]
  2. var sum = arr.reduce((pre, item) => {
  3. return pre + item
  4. }, 10)
  5. console.log(sum) // 20

不带初始值

  1. var arr = [1,2,3,4]
  2. var sum = arr.reduce((pre, item) => {
  3. return pre + item
  4. },)
  5. console.log(sum) // 10

3.reduce数组去重

  1. var arr = [1,2,3,3,2,1,4]
  2. arr.reduce((acc, cur) => {
  3. if (!(acc.includes(cur))) {
  4. acc.push(cur)
  5. }
  6. return acc
  7. }, [])
  8. // [1, 2, 3, 4]

4.reduce求数组项最大值

  1. var arr = [1, 2, 3, 4];
  2. arr.reduce((prev, cur) => {
  3. return Math.max(prev,cur);
  4. });
  5. //4

5.reduce将二维数组转为一维数组

  1. var arr = [[1,2], [3,4], [5,6]]
  2. arr.reduce((acc, cur) => {
  3. return acc.concat(cur)
  4. }, [])
  5. // [1,2,3,4,5,6]

以上就是今天的内容分享,如果你觉得有用,记得收藏点赞哦,以防找不到我!

(以上部分文字及图片整理于网络,如有侵权联系删除)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/903617
推荐阅读
相关标签
  

闽ICP备14008679号