3.31笔记

传值和传引用
注意 : 传引用,传递的是地址,如果地址传递到另一个地方,则拥有相同地址的变量,可以找到同一个对象,那么操作的数据也是相互的

This
1、在成员方法或者构造方法中,用来区分同名的局部变量和成员变量;
2、this不能出现在静态环境中
3、return this; 返回当前对象的内存地址,可以做到链式调用;
4、用在构造方法中,调用当前类中重载的构造方法this();必须在第一行

Static
1、static修饰的类体中的变量是静态变量
2、static修饰的类体中的方法是静态方法
3、static修饰的语句块是静态语句块
*注意:*静态属性是在类加载阶段执行的,是程序的开始,类加载就是访问一个类的静态属性的时候,把该类载入静态区

静态语句块:
静态语句块等价于静态方法,不过没有名字,只能执行一次
类加载完直接执行,在main方法被调用之前执行,多个静态语句块从上往下执行
动态语句块
等价于成员方法,成员属性依赖于对象,创建对象之后立即执行,每创建一个对象执行一次

protected:
受保护的,继承权限,如果没有继承关系,同包也是可以访问的,要么有继承关系,要么同包,继承需要通过子类对象访问

extend:
private不能被继承,但是可以通过getter/setter对私有属性进行操作
构造方法不能被继承,但是可以通过在子类方法第一行写入 super(参数) 调用
目的:方法重用
最大的功能拓展:方法复写

super:
1、用在成员方法和构造方法中,可以通过super访问父类的属性
可以通过super区别子类和父类同名属性
2、super不能出现在静态上下文中,在成员方法或构造方法中,也必须是super.xxx的形式
3、用在子类构造方法中,使用super(xxx)调用父类的构造方法
如果子类构造方法中没有定义this(xxx)/ super(xxx)则默认第一行有个super()调用父类的无参构造
this()和 super()都必须出现在构造方法的第一行,所以两种写法不能同时存在

总结:
类名 : 区分同名的局部变量和静态变量
This : 区分同名的局部变量和成员变量
Super : 区分父子类中同名的变量和方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值