2019-07-30

2019-07-31  本文已影响0人  没齿无怨言

null值 是不与任何值相等的;

opp

封装 :  继承: 多态;

事物(对象)  ------ 》  抽象--------》  类 ------ 》对象;

class  className   {

}

方法重载:

同一个类中:在同一个类中定义;

参数列表 :  顺序,类型不同,

封装:  引用不到;  需要自己设置 get ,set  让其可以获取;

封装: 属性的封装   ----  行为封装;


Constructor  --- 构造器(构造方法);  //构造器的目的;  在new 对象的时候 就可以赋值;

和类名相同;

一旦自己定义了构造器,java自带的无参的构造器 就没有了;

多个构造器 : 构造重载      构造器  不能有返回值 而且 一般均为:public

构造器 是可以相互调用的,但是不能形成递归调用;

构造器  调用 :  this () ;     //   this ()  只能在放在第一行;

this关键字:
 this name  = name       or  this();


继承 :      解决 ---  重复的代码  不用写了;

存在 一定的 关系的 时候   才会继承;

extends  关键字 ;

继承后的调用 : 会采用 就近原则; 用super 可以调用父类;

属性: public,private 均可以  的成员变量 是可以继承的,但是private  不可以被访问;

方法:  可以继承,主要是看能不能访问( 看访问修饰符) ; 用方法去赋值,也可以用来改变成员变量的值;

构造器: 无法被继承,子类的构造隐含调用父类 无参的构造器; 会自动调用父类的(但是父类一定要有 无参的构造器);   也可以显式调用  父类的构造器(手动调用)

子类的构造器 一定会调用父类的构造器 ;  super 也要作为第一条语句;

实现也是特殊的一种 继承

 


方法的重写:   @Override  

1:返回值类型可以不一样,但是两者必须是子父类的关系;  父类也是要父类 就可以。

2:方法名一致;

3:参数列表相同;

4:子类:修饰符 不能被缩小,可以被扩大;

5:抛出异常: throws   excpetions{}  异常是不可以扩大;



多态:  一般也是发生在子父类中间。

父类或者接口的引用指向其子类的对象

 Person  p1 = new  Teacher ();

编译的时候 是看的 =号左边的,

运行的时候 是看的 =号右边的,

类型转换 : 看成 子类转父类 ,           由高转低  看有没有 多态的情况才能强转   instanceof ;

多态:

 

上一篇 下一篇

猜你喜欢

热点阅读