【笔记】Java编程思想—一复用类

1、组合与继承

2、继承会得到基类的所有字段和方法

新类是基类的的一种类型

3、被继承的类中,一般将数据成员指定为private,将方法指为public。

4、super

super.scrub()将调用基版本的scrub方法

5、用基类构造器初始化基类子对象

创建子类对象时,先调用基类构造器,再调用导出类的构造器

6、带参数的基类构造器

class Game{

   Game(int i){

   ........... 

   }

}


class BoardGame extends Game{

      BoardGame( ){

       super(i);  //调用基类构造器

        ..........

      }

}


7、is a的关系用继承表达,has a的关系用组合来表达

8、组合的例子P154

Car has-a  Wheel,Door。成员对象可为public

9、protected:对于任何继承于基类的导出类或同一包内的类来说,基类是可以访问的


10、如果需要向上转型,用继承。否则用组合

class Instrument{
public  play(){};
static void tune (Instrument i){
   i.play;
}
}
</pre><pre name="code" class="java">public class Wind extends Instrument{     //需要向上转型,用继承
      public static void main(String[] args){
    Wind flute =new Wind();
    Instrument.tune(flute)  //用了向上转型
    }
}
 11、final: 

对于基本类型,final使数值恒定不变

对于对象引用,final使引用恒定不变,引用只能指向一个对象,但对象自身是可以被修改的

12、final方法:可防止继承类修改它的含义。

private方法都是隐式的为final的

13、final类:表明你不打算继承继承该类


14、继承的初始化:先初始化基类的static,再初始化导出类的static。

类加载完毕后就可以创建对象了。首先对象中基本类型数据设为缺省值,对象引用为null。然后调用基类的构造器。

再初始化实例变量,最后执行子类构造器。




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值