代码块,static修饰,继承主要内容

static修饰

特点 :随着类加载而加载,优先于对象存在,可以被多个对象共用
静态修饰的成员,也称为 “类成员”
静态中不存在this关键字
静态的成员方法只能访问静态的成员变量和静态的成员方法
非静态的成员方法可以访问静态的成员变量和静态的成员方法也可以访问非静态的成员变量和非静态的成员方法

代码块

代码块分为:
局部代码块
在类中的局部位置(方法中定义)
作用:限定当前该局部变量的生命周期,仅仅是在当前代码块作用域中有效
构造代码块
在类中的成员位置使用{}定义,每次执行构造方法之前,先执行构造代码块如果有构造代码块
作用:可以将多个构造方法中的相同的代码可以放到构造代码块中,给对象进行初始化!
静态代码块
在类中的成员位置,static{} ,特点每次只执行一次,优先于对象存在
作用:给类进行初始化的

注意实行:
静态代码块只加载一次!

优先级:静态代码块> 构造代码块>构造方法

继承

关键字:extends
继承的概念:
将多个类中的共同代码单独提取出来,形成一个独立的类,多个类和当前独立的类产生一种关系
继承的好处:
1)提高了代码的复用性
2)提高了代码维护性
3)类和类产生这种关系,是多态的前提条件
Java中继承的特点:
1)在Java中,只支持单继承,不支持多继承,在别的语言可能有多继承存在
2)在Java中,虽然不支持多继承,但是可以多层继承
继承中的注意事项:
1)子类继承父类,只能继承父类非私有的成员(成员变量,成员方法),但是可以通过公共方法间接的访问!
2)子类不能继承父类的构造方法,但是可以通过关键字间接访问父类的构造方法(super)
3)不要为了部分使用功能去使用"继承"
成员变量
1)子类继承父类,子类中的成员变量名称和父类中的成员变量不一致的情况:比较简单,分别输出!
2)子类继承父类,子类中的成员变量名称和父类中的成员名称一致的情况

a)先在子类的局部位置中找,如果存在,就使用
b)如果在类的局部位置没有,那么在子类的成员位置找,如果存在,就使用
c)如果子类的成员位置没有,那么在父类的成员位置找,如果存在,就使用
d)如果父类的成员位置都没有,那么就报错

this.成员变量:当前类的成员位置的成员变量
this.成员变量访问的父类的成员变量
this()/this(…):访问本类中构造方法
this.成员方法名():访问本类中的成员方法
super:代表父类的空间标识(父类对象的地址值引用)
super.成员变量:访问的父类的成员变量
super()/super(…):访问父类中的构造方法
super.成员方法名():访问父类中的成员方法
关于super():访问无参构造方法,必须写在子类构造方法中第一句话

子类继承父类的时候,子类的构造方法都会默认访问父类的无参,如果父类中不存在无参构造会出现编译报错
如何解决?
1)手动显示的给出父类的无参构造方法
2)如果父类的无参构造方法不给出,只能通过super(…)间接的访问父类的有参构造
3)可以在子类有参构造方法中通过this(),访问本类的无参,然后在通过本类的无参间接的
通过super(…)访问父类的有参

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值