总结this与super

总结this与super
www.zeeklog.com  - 总结this与super

本文共1048字,读完大概需要3分钟

既然是搞java开发,这两个关键字是入门的时候必学的。但是不能说每个人都一定会一定懂。今天就来聊聊这两个东东。

对象实例化的时候,至少有一条从本类出发抵达Object的通道,而打开这条通道的两个主要的工兵就是this和super,可以说是逢山开路遇水搭桥。其实很多时候this和super往往是默默无闻的,在很多情况下是被省略的。

比如:

  • 本类方法调用本类属性
  • 本类方法调用另一个本类方法
  • 子类构造方法隐含调用super()

任何类在初创期,都有一个默认的空构造方法,同时super方法的一条默认通道。构造方法的参数列表决定了调用通道的选择,如果子类调用父类的某个构造方法,super就会不断往上溯源;如果没有指定,则默认调super方法。如果父类没有提供默认的构造方法,子类集成会报错。

class Base{	
    public Base(int age){	

    }	
}	
public class User  extends Base{	
//编译失败	
    public User() {	
    }	
}

提示

Error:无法将类 com.tian.swagger.domain.Base中的构造器 Base应用到给定类型;	
  需要: int	
  找到: 没有参数	
  原因: 实际参数列表和形式参数列表长度不同

如果父类始终没有提供默认的无参构造方法,必须在本类的无参构造方法中使用super方式调用父类的有参构造方法:

class Base{	
    public Base(int age){	

    }	
}	
public class User  extends Base{	
    public User() {	
        super(1);	
    }	
}
  • 一个实例变量可以使用this.赋值另外一个实例变量;
  • 一个实例方法也可以通过this.调用另外一个实例方法;
  • 即使是一个构造方法都可以使用this.来调用另外一个构造方法。
  • 如果this.和super指代构造方法,则必须位于方法的第一行。

换句话说,就是一个方法中this和super只能出现一个,并且只能出现一次,否则实例化对象的时候,会因为子类调用到多个父类构造方法,从而导致混乱。

由于this和super都在实例化阶段调用,所以不能在静态方法和静态代码块中出现this.和super关键字。this还可以指代当前对象,比如在同步代码块中

private void test() {	
    synchronized (this) {	
      //doSomething	
    }	
}

super却不能这么使用。但是super也有自己的特点,在子类中覆写父类方法时候,可以使用super调用父类同名的实例方法,下面总结一下this和super的异同点:

www.zeeklog.com  - 总结this与super
www.zeeklog.com  - 总结this与super

Read more

LibreChat 集成 Stripe 支付的奶妈级教程

LibreChat 集成 Stripe 支付的奶妈级教程

我们假设你已经熟悉基本的 React 和 Node.js 开发,并且正在使用 LibreChat 的默认技术栈(React 前端、Node.js 后端、Vite 构建工具,可能还有 Electron 桌面应用)。教程会特别考虑 Electron 环境下的适配问题(例如 macOS 中文路径或路由错误)。“奶妈级”带你从零开始实现支付功能(包括一次性支付和添加高级会员订阅) 教程目标 * 在 LibreChat 中添加支付页面,支持用户通过信用卡付款。 * 实现 Stripe 的一次性支付功能。 * (可选)扩展到订阅功能,管理高级会员状态。 * 解决 Electron 环境下的常见问题(如路由和路径解析)。 * 生成可公开推送的 Markdown 教程,方便社区参考。 前提条件 在开始之前,请确保你已准备好以下内容:

By Ne0inhk
超棒的雅思资源!

超棒的雅思资源!

雅思真题材料地址: https://github.com/zeeklog/IETLS 感谢所有人。材料来自:@shah0150 & @kbtxwer * 超棒的雅思资源 * 雅思简介 * 听力 * 阅读 * 写作 * 口语 * 词汇 * 其他 * YouTube 频道 * [播客] (#podcasts) 雅思简介 * 什么是雅思 - 了解什么是雅思 听力 * 高级听力 * 雅思官方网站 * 考试英语 * 英国广播公司节目 * 乔治梅森大学口音学习网站 - 学习不同的口音 * 英国广播公司播客 * 英国文化协会听力练习 阅读 * 雅思提升阅读 写作 * 雅思提升写作 * 雅思从 6 分到 9 分 * 迷你雅思 口语 * Verbling 提供在线英语家教服务

By Ne0inhk