zoukankan      html  css  js  c++  java
  • 4. Java 方法

    4. 方法

    • Java 方法是语句的集合,它们在一起处理一件事情。
    • 方法包含于类和对象中
    • 方法在程序中被创建,在其他地方被调用

    4.1 方法的定义

    • Java 的方法类似于其他语言的函数,用一段完成特定任务的代码片段。
    修饰符 返回值类型 方法名(参数类型 参数名){
         方法体
         ...
    }
    

    4.1.1 方法的四种类型

    1. 无参无返回值的方法
    2. 有参无返回值
    3. 无参有返回值
    4. 有参有返回值

    4.2方法的重载

    • 重载:同一个类中多个同名方法根据不同的传参来执行不同的逻辑处理。(编译期)
    • 方法重载的规则:
      1. 方法名必须相同
      2. 参数类型、个数、顺序不相同
      3. 返回值和修饰符可不相同

    4.3 方法的重写

    • override - 重写

    • 重写需要继承关系

    • 静态方法是与类一起加载的,与重写无关。非静态方法子类可重写父类的方法

    • 重写的关键词只能是 public

    • 重写 方法名必须相同,参数列表必须相同

    • 修饰符:范围可以扩大但不能缩小; public > protected > default > private

    • 抛出的异常:范围可缩小但不能扩大

    • 重写 子类的方法与父类的方法必须一致,方法体不同

    • 为什么需要重写

      1. 父类的方法无法满足子类的需求

    重载和重写的区别

    • 重载是同方法名、参数的个数/类型/顺序不同、返回值和修饰符也可不同

    • 重写:发生在运行期,是子类对父类允许访问的方法种方法体的重新实现。(内部逻辑)

      • 返回值、方法名、参数类型必须相同
      • 抛出的异常范围小于等于父类,访问修饰符不能大于等于父类
      • 构造方法无法被重写

    4.4 可变参数

    • 一个方法中,只能有一个可变参数,必须在参数的末位

    4.5 递归

    • 自己调用自己,并给自己一个出口

    4.6 Java 是 值传递

    Java 程序设计语言是采用按值传递。方法得到的是所有参数值的一个拷贝,它无法修改传递给它的任何参数的内容。

    Java种方法参数的使用情况:

    • 一个方法不能修改一个基本数据类型的参数
    • 一个方法可以改变一个对象参数的状态
    • 一个方法不能让对象参数引用一个新的对象

    4.7 深拷贝 和 浅拷贝

    浅拷贝:

    对基本数据类型进行值传递,对引用数据类型进行引用传递

    深拷贝:
    对基本数据类型进行值传递,对引用数据类型,创建一个新的对象,并赋值其内容

    构造方法 可以被重载(overload)不能被重写(override)所以一个类可以有多个构造方法.

  • 相关阅读:
    Play Framework框架安装指南 程序员
    Struts2.0标签学习 程序员
    一个给邮箱发送消息简单的例子 程序员
    CAGradientLayer 颜色渐变
    ObjectiveC 枚举类型和字符串互转方案
    添加本地通知(UILocalNotification)以及添加系统组件滚动视图(UIScrollView)!
    setNeedsDisplay setNeedDisplayInRect
    CAKeyframeAnimation 运行路径 速度控制
    How to pause or end a UIView animation via the CALayer
    NSTimer你真的会用了吗
  • 原文地址:https://www.cnblogs.com/blackBlog/p/13451193.html
Copyright © 2011-2022 走看看