1。初始化引用的四种方式:一 在定义对象的地方;二 在类的构造器里面; 三 惰性初始化:在正要使用之前 四 使用实例初始化。
2。类如果没有明确指出继承,则隐式的从java的标准根类Object进行继承。
3。用super关键字来表示超类的意思。
4。创建一个导出类,该对象包含了一个基类对象,这个对象与你用基类创建的对象是一样的。区别是,一个是在外部,基类的子对象是包装在导出类对象内部。
5。继承的构建过程是从基类向外扩散。基类在导出类的构造器访问他之前就完成初始化。
6。继承调用带参数的构造器,需要用super显示编写调用基类构造器的语句。是在导出类构造器中第一件要做的事情。
7。is-a关系用继承,has-a关系用组合。
8。protected就类用户而言,这是private,但对于继承与此类的导出类或者同一个包中的类,它是可以访问的。
9。继承技术最重要的方面是表现新类与基类之间的关系。(新类是现有类的一种体现)
10。继承图讲跟置于页面顶端,逐渐向下。由导出类转型成基类,在继承图是向上移动的。所以叫向上转型。向上转型过程中 只发发生丢失方法。
11。必须向上转型 ,用继承。
12。空白final是指声明但未给定初值的域,必须在域的定义处或者每个构造器中用表达式赋值。
13.。final参数无法再方法中被修改。
14。final方法,把方法锁定 ,在继承中行为不变,不会被覆盖。
15。private方法被隐式的指定为final。
16。方法为private,不是基类对外提供的接口,子类中同名的方法不会覆盖。由于private无法触及而且能有效隐藏,所以除了把它看成归属类的组织结构,其他不用考虑。
17。final类禁止继承,所用方法都隐式指定为final。
18。类是在其任何static成员被访问时加载的。(构造器也是static方法)
19。在加载过程中,如果有基类(extends),继续加载,以此类推。接下来,根基类中的static初始化被执行,然后是下一个导出类。构造器以相同的顺序执行。
20。在基类构造器完成之后,实例变量按其次序初始化。最后,构造器的其余部分被执行。
复用类
最新推荐文章于 2020-04-14 18:18:09 发布