java面向对象

面向对象:

封装、继承、多态

 

1、继承:

a)       Java中只能实现单继承

b)      但是可以实现多层继承

c)       要符合is a 规则

d)      继承的格式:

Class 子类名 extends 父类名

e) Java中应用在开发,继承的常用格式:

Class 子类名 extends 父类名 implements 接口,接口....

2、this和super关键字:

This:可以调用本类的属性和方法

格式:

This.属性名

This.方法名

This():调用的是本类的构造器

 

Super:调用父类的属性和方法

格式:

Super.父类属性或者父类方法

Super(参数列表) :调用父类的有参构造

注意事项:

This和super关键都必须写在构造方法中的第一行,否则报错.

 

3、抽象类

a)       用abstract修饰的类就是抽象类

b)      如果一个普通类中有一个抽象方法,那么当前类一定是抽象类.

c)       抽象是不能实例化的

d)      抽象类是天生作为父类存在

 

4、final关键字

Final修饰的类不能被继承

Final修饰的方法不能被重写

Final修饰的变量是常量,常量值不能修改.

 

5、接口就是功能(方法)的集合.

1)定义接口的格式:

权限访问修饰符 interface 接口名{

抽象方法;

}

2)类实现接口的格式:

Class 实现类名 implements 接口名{

抽象方法的具体实现;

例如:

@Override

Public void show(){

具体实现的代码;

}

}

3)接口的特点:

接口不能被实例化

接口中不能定义普通的属性,只能定义常量.

接口可以实现多继承

 

4)类和接口之间的关系:

A.类和类之间是单继承关系

B.接口和接口之间是多继承关系

C.类和接口之间是实现关系

 

6、向上溯型(默认转换)

其实就是默认转换(子类对象转成父类对象)

7、向下溯型(强制类型转换)

要想实现向下转型,前提条件必须要先向上转型之后,才能向下溯型.

 

8、instanceof运算符是用来判断对象类型的.

格式:

对象名 instanceof 类名

实现类名 instanceof 接口名

 

9、一个对象多种形态

实现多态的三要素:

1)必须要有继承或者实现关系

2)必须要有重写方法

3)父类引用指向子类对象

格式:

父类名 引用名 = new 子类名();

接口名 引用名 = new 实现类名();

 

练习:

父类Animal

Name age sex

Eat()  sleep()

子类Dog

子类重写父类的eat  sleep 方法

接口

抽象方法:

描述dog会搜毒.

 

10、内部类:在一个类中嵌套一个类

1)成员内部类(了解):把一个内部类当成外部类的属性.

格式:

Class 外部类名{

Class 内部类名{

}

}

成员内部类的调用格式:

外部类名.内部类名 对象名 = new 外部类名().new 内部类名();

 

 

2)局部内部类(了解):把一个内部类当成外部类方法中的局部变量.

 

格式:

Class 外部类名{

 

Public void show(){

Class 内部类名{

 

}

}

}

 

局部内部类的调用格式:

1)在外部类的成员方法中创建内部类对象

2)在外部类的成员方法中通过   内部类对象名.内部类方法 可以调       用.

 

3)匿名内部类(必须掌握)

继承关系的匿名内部类格式:

new 父类名(){

重写方法;

};

 

实现关系的匿名内部类格式:

new 接口名(){

重写方法

};

 

posted @ 2019-04-22 21:24  Pythons!  阅读(186)  评论(0编辑  收藏  举报