java日常笔记2016-12-15

1:理解对象创建的过程(静态代码块(父类、子类静态代码块)、构造父类对象完毕、成员变量(默认初始化、实例初始化)??、实例代码块、构造方法)


2:父类引用指向子类对象(向上转型) 

但是:

父类引用指向子类对象,是为了实现多态
而向上强制类型转换是一个多余的过程,没有任何意义

向下强制类型转换很有用
3:动态绑定:
是指当调用一个对象的某个方法(或成员函数)时,需要到运行的时候根据对象的具体类型决定执行那个方法体,也就是所谓的多态
4:类型之间的转换:

向上转型主要用于继承抽象类和实现接口上,体现了面向对象的编程思想; 可以转给任何一个父类

向下转型就是对父类的强制类型转换(不可控) 可以转给任何一个子类(不可控)

5:多态的作用:1:有利于扩展 2:作为参数利用

1) 如果没有多态,参数是原始类型,导致代码到处要强转!!
2)实参允许原始类型或子类
3) 接口也是父类.


String str = "实际参数";
test(str);//使用了多态!
test((Object)str);//使用了多态!

6:抽象方法:

1、不能私有化!
2、声明的时候不能写成默认的!!
1)不重写报错!却不允许重写!!太难侍候了!


不能静态!

天生就是被强制重写的!

7:有抽象成分的类必定是抽象类

1:普通的类是完全具体

2:抽象的类是半抽象半具体(不能直接实例化(只能实例化比他更具体的类型)、天生就是被别人继承的(外部类:正常继承) 匿名内部类,直接new {}实现)实例化时必须是完全具体的

8:接口:1:是完全抽象的 2:java不允许多继承 3:多态调用父类的方法时,会引起歧义 3:接口包含(方法(默认修饰词是public abstract可以省略)、成员变量(就是常量) 4:对接口的理解)

9:instanceof(可控
1:判断对象是否属于某类型
2:什么时候可以使用(存在继承关系时)
3:什么时候为true(本类、父类、接口)
4:只要为false就不能强转
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值