黑马程序员日记-3

------- Android培训java培训 期待与您交流! ----------

继承:

* JAVA不支持多继承

* 构造方法不能被继承,子类对象生成时如果没有指定调用父类的哪个构造 函数则会先自动调用父类的无参构造函数,再调用自身的构造函数,目 的是子类继承了父类,就获取到了父类的内容(属性),所以使用父类 内容前要看父类是如何初始化父类自身内容的,所以必须访问父类中的 构造函数,如果父类构造函数没有定义无参构造函数,那么子类必须用 super();指定要访问父类的哪个构造函数,super语句必须放在子类构造函 数的第一行,因为父类初始化动作必须先完成

* 子类重写父类方法时,其方法的访问权限不能低于父类

主函数:格式固定,被JVM所识别和调用

public:权限必须最大

static: 虚拟机调用主函数不需要对象(类名.main()

void: 主函数不需要返回值

main: 函数名

String[] args:参数列表

final

修饰变量时该变量成为常量,必须赋值且只能付一次值

修饰方法时该方法在子类中不能被重写

修饰类时该类不能被继承

抽象类:

* 抽象类中不一定都是抽象方法,含有抽象方法的类一定是抽象类

子类必须实现父类所有抽象方法,否则还是一个抽象类

抽象类不能实例化

抽象类有构造方法,用于给子类初始化

* abstract关键字不能和以下关键字共存:

* finalfinal修饰的类不能被继承,抽象类则需要子类继承

* private:抽象类中如果有私有方法,子类无法进行重写

* static:如果成员是静态的则不需要对象就能运行,而抽象方法没有方 法体

接口:接口是一种特殊的抽象类,如果一个抽象类中所有的方法都是抽象的,那 么这个抽象类就是接口,接口与接口间是继承关系,而且接口可以多继承

抽象类和接口的区别:

抽象类需要被继承而且只能单继承,接口需要被实现而且可以多实现

抽象类中可以定义抽象方法和非抽象方法,子类继承后可以直接使用非抽 象方法,接口中只能定义抽象方法,必须由子类实现

抽象类的继承是 is a 关系,定义该体系的基本共性内容

接口的实现是like a关系,定义该体系的额外功能

抽象类描述事物,接口描述事物可以具有的功能

多态:

父类的引用既可以指向父类对象,也可以指向子类对象,程序可以根据当 前指向自动调用不同对象的方法

 

通过父类引用只能访问子类从父类继承过来的成员,不能访问子类特有成

向下转型是为了使用子类特有方法

在转型中自始至终都是子类对象在做类型转换

多态中成员特点:

成员变量:编译和运行时参考引用型变量所属类中是否有调用的成员 变量,有编译通过,没有编译失败

非静态成员函数:

编译时参考的是引用型变量所属类中是否有调用的成员变量

运行时参考的是对象所属的类中是否有调用的函数

静态函数:编译和运行时参考引用型变量所属类中是否有调用的静态 方法,有编译通过,没有编译失败

 

异常:

* finally中的语句不管try中的语句有没有出错都会执行(即使try{}catch{} 语句中含有return语句)。目的是释放资源

子类抛出的异常不能大于父类抛出的异常

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值