博客
关于我
Java零基础学习-----面向对象(二)
阅读量:605 次
发布时间:2019-03-12

本文共 1178 字,大约阅读时间需要 3 分钟。

构造方法的概念与使用

构造方法在Java编程中扮演着重要角色,用于初始化对象及成员变量。以下是构造方法的基本概念和使用方法:

构造方法的基本概念

构造方法是通过new关键字创建对象时会自动调用的方法。它的基本语法格式如下:

class 类名 {    class Person {        Person() {            // 构造方法体        }    }}
  • 当一个类没有自定义构造方法时,编译器会自动提供一个无参的空构造方法,称为默认构造方法。
  • 如果类中定义了构造方法,编译器不会提供默认构造方法。

构造方法的作用

使用new关键字创建对象时会自动调用构造方法,负责初始化对象的成员变量。

方法重载的概念和体现形式

方法重载(Overload)是指具有相同名称但参数列表不同的方法。常见的重载形式包括:

  • 参数个数不同
  • 参数类型不同
  • 参数顺序不同
  • 返回值类型不同
  • 方法是否可以构成重载的核心在于调用时是否能区分不同的方法。

    方法重载的意义

    方法重载的意义在于通过记住方法名可以调用不同版本的方法,从而实现不同的功能。例如,PrintStream类中的println方法就提供了多个重载版本。

    this关键字的基本概念

    this关键字在Java中具有重要意义:

    在构造方法中使用this

    • this代表正在构造的对象。
    • 构造方法的第一行可以使用this()来调用本类的其他构造方法。

    在成员方法中使用this

    • this代表当前正在调用的对象。
    • 访问成员变量时,编译器会自动加上this.的前缀(即“我的”)。
    • this关键字作为返回值使用时,返回当前对象的引用。

    this关键字的使用注意事项

  • 在方法体中如果要访问成员变量,需要明确区分成员变量和局部变量。
  • this()只能在构造方法中使用。
  • NullPointerException空指针异常

    NullPointerException的发生情况

    • 当引用类型变量为null时尝试访问它的成员变量或调用方法会引发NullPointerException。

    防御措施

    • 避免直接使用new操作符创建对象。
    • 在必要时使用null检查来避免调用null对象的方法。

    封装的概念和实现

    封装的作用

    • 封装通过私有化成员变量和提供公有访问接口的方式,保护对象的内部细节。
    • 防止不合理的数值赋值和其他不规范操作。

    封装的实现方法

  • 使用private关键字私有化成员变量。
  • 提供getset方法进行合理值控制。
  • JavaBean概念

    JavaBean的定义

    JavaBean是可重用的Java类组件,其标准特征包括:

  • 类是公开的。
  • 提供一个无参的公共构造器。
  • 有属性并提供getset方法。
  • JavaBean的优势

    JavaBean通过反射机制提供了高度的灵活性和可定制性,广泛应用于可视化开发中。

    转载地址:http://eirxz.baihongyu.com/

    你可能感兴趣的文章
    Spring 框架之 AOP 原理深度剖析
    查看>>
    Pandas:如何按列元素的组合分组,以指示基于不同列的值的同现?
    查看>>
    Pandas:将一列与数据帧的所有其他列进行比较
    查看>>
    panda查找想要找的行合并成一个新pd
    查看>>
    PANDA:基于多列对数据表的行运行计算,并将输出存储在新列中
    查看>>
    PandoraFMS 监控软件 SQL注入漏洞复现
    查看>>
    PandoraFMS 监控软件 任意文件上传漏洞复现
    查看>>
    PanTools多网盘登录神器
    查看>>
    Papyrus项目常见问题解决方案
    查看>>
    Parallel.ForEach使用示例
    查看>>
    Parallel.ForEach的基础使用
    查看>>
    parallels desktop for mac安装虚拟机 之parallelsdesktop密钥 以及 parallels desktop安装win10的办公推荐可以提高办公效率...
    查看>>
    parallelStream导致LinkedList遍历时空指针的问题
    查看>>
    Parameter ‘password‘ not found. Available parameters are [md5String, param1, username, param2]
    查看>>
    ParameterizedThreadStart task
    查看>>
    Paramiko exec_命令的实时输出
    查看>>
    Spring security之管理session
    查看>>
    paramiko模块
    查看>>
    param[:]=param-lr*param.grad/batch_size的理解
    查看>>
    spring mvc excludePathPatterns失效 如何解决spring拦截器失效 excludePathPatterns忽略失效 拦截器失效 spring免验证拦截器不起作用
    查看>>