static、this、封装、继承

static、this、封装、继承

This

1. 是啥

this是每个对象中,保存当前内存地址的一个引用类型变量
出来的时候表示当前对象
谁调用的当前方法,this就是谁

2. 干啥的
在这里插入图片描述
2.1 区分同名的局部变量和成员变量

前面加this.xxx就相当于这个方法里的值

2.2 不能出现在静态上下文中

在静态状态中出现会报错,显示引用了非静态变量

2.3 链式调用

一个方法1中最后加了return this;以后,其他方法2调用了这个方法以后又返回调用这个方法1的方法2,再继续调用其他方法3,从而实现方法2先调用方法1后又到了方法3最后回来,从而实现链式调用

2.4 调用重载的构造方法

this(参数):必须在构造方法第一行,为了避免代码重写

Static

1. 是啥

static是一个修饰符,区分静态属性和成员属性

2.干啥的

在这里插入图片描述
在这里插入图片描述

3. 怎么用

3.1 静态方法和静态变量
static int a = 2;
static static void a(){
}
3.2 静态语句块
类似静态方法但是没有名字,不能重复执行
类加载完以后,自动执行,main方法被调用前自动执行
从上往下依次执行

3.3 动态语句块

在这里插入图片描述
3.4 静态属性调用

在这里插入图片描述

3.5 静态和成员的区别

静态是所有对象共享
成员是所有对象独立(不共享)
如果对象有相同的属性不同的值,使用成员变量
如果对象有相同的属性相同的值,使用静态变量

软件包机制

1 package

在这里插入图片描述
2. import
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

编写代码时,当我们按空格 或者是 回车的时候,会自动导包,需要注意,是否导入的正确

权限修饰

规定一个数据的访问范围

在这里插入图片描述

在这里插入图片描述

继承 entends

1. 是啥

Java中只支持单继承,不支持多继承,这样使继承关系比较简单,一个类 只有一个父类,易于程序管理,当然为了解决单继承功能变弱的问题,java又提出了接口,一个类可以实现N个接口
如果一个类,没有显示继承几个父类的话,则该类默认继承java.lang.Object
不管如何继承,最终任何类都直接/间接的成为Object的子类
Object是java提供的根类(祖宗)
Private不能被继承,但是可以通过getter/setter对私有属性进行操作
构造方法不能被继承

目的 : 代码重用
最大的功能扩展 : 方法覆写

2. 干啥的

1 代码重用,父类进行编码之后,子类可以直接使用
2 如果父类的功能不能满足子类需求,还可以对功能进行重写
3 使用多态

3. 怎么用

class 子类名 extends 父类名{
}

Super

1.是啥

父类型的特征
this是对当前对象引用

2. 干啥的

在这里插入图片描述

3. 怎么用

3.1 区分父类和子类相同的类型
在这里插入图片描述

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

3.2 super注意事项

成员方法中,用super要用.的形式访问
静态方法中,不能用

3.3 调用父类的构造方法

不写super()的时候,也会默认调用一个父类的无参构造

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值