java-面对对象特点概要

java-面对对象特性概要
java-面对对象特性概要
一 对象与对象之间的联系
依赖 

关联

聚合 可以独立

组合 不可独立

继承 子类父类的关系

二 打包java文件

打包java文件

jar cvfm test.jar ***.mf ***.class等class文件

解包运行

java -jar test.java

三 继承

子类(派生类)继承父类(基类),继承与被继承的关系,面对对象就是不同的对象间相互联系

关键字 extends

public class S extends F{}

私有方法和变量无法继承

四 方法的覆盖和重载

覆盖

子类重写父类的同名方法

1 方法名相同

2 参数一致

3 子类方法修饰符大于等于父类的修饰符

4 有继承联系

5 出现在不同的类中,即子类和父类

重载

方法的重载出现在一个类中

五 多态

父类 对象 = new 子类

该对象指向子类

若父类和子类存在方法的覆盖,则该对象仍然调用子类的覆盖方法
 
对象可以当做方法的参数

六 this和super

1 this

this.a();

用点调用

2 super

前提是子类继承父类

在子类中使用super

父类先构造

子类在构造

super()代表调用父类的构造方法

super.a()代表调用父类的方法


七 抽象类和接口

抽象类

关键字 abstract

列如,动物类

1 可以有成员变量

2 可以有构造方法

3 可以有修饰符

4 可以有抽象方法,没有方法体的方法(没有花括号),含有abstact关键字 public abstract void eat();

5 抽象类的抽象方法必须被子类去覆盖,去实例化

接口

接口也是一个特殊的抽象类

1 含有成员变量,方法比抽象类更高级

2 全部是抽象方法,abstract, 抽象类中可以有非抽象类

3 结构的成员变量必须初始化,默认加上了括号的内容
(public static final )int age = 10;

4 继承 public class Stu implement Person{} 子类必须实现接口的所有抽象函数