继承里的那些小事

  1. 顺便记一下今天学到的然后又就觉得挺有意思的内容
    在Java中,使用{}括起来的代码被称为代码块。
  2. 在Java中,使用{}括起来的代码被称为代码块。
  3. 代码块的分类:
  4. 局部代码块:在方法中出现
  5. 构造代码块:在类中方法外存在,执行先于构造方法
class A {
	{
	System.out.println("这个就是构造代码块");
	}
	piblic A {
	System.out.println("--------");
	}
	public void print() {
		System.out.println("这个是类中的方法");
	}
}
  1. 静态代码块:在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次。
    又因为类一加载,静态的东西就跟着执行,而构造函数构造代码块这些事跟着对象的出现而出现,所以静态代码块比构造代码块先执行
  2. 同步代码块:这个目前还不熟悉,等学了再补充




继承中的this和super的区别

this:代表当前对象的引用,谁来调用我,我就代表谁
super:代表当前对象父类的引用

调用成员变量:
this.成员变量 调用本类的成员变量,也可以调用父类的成员变量
super.成员变量 调用父类的成员变量

调用构造方法(必须出现在第一行,且只能存在两者之一,不写出来系统会默认)
this(…) 调用本类的构造方法
super(…) 调用父类的构造方法

调用成员方法
this.成员方法 调用本类的成员方法,也可以调用父类的方法
super.成员方法 调用父类的成员方法

  • 子类中所有的构造方法默认都会访问父类中空参数的构造方法( 因为子类会继承父类中的数据,可能还会使用父类的数据。所以,子类初始化之前,一定要先完成父类数据的初始化。)
class A {
		public A {
		System.out.println("这是父类");
		}
}

class B extends A {
	super();			//这个就是调用父类无参构造函数,就算不写出来,系统也会默认这句的存在
	public B {
			System.out.println("这是子类");
		}
}
class Test {
	public static void main(String[] args) {
	B b = new B();		//一般都是创建子类对象,因为可以方便用父类的资源
}
}
/*
所以输出的是:
这是父类
这是子类
*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值