抽象
抽象就是指将事物的相似和共性之处抽取出来,放在一个类中,不考虑细节,只考虑相似和共性之处,java中最典型的抽象就是携带abstract或interface关键字的类或者接口,例如我们定义的接口,就是对具体功能的抽象,优点在于1、使代码简洁清晰易于维护 2、团队可以协作并行开发 3、模块清晰
继承
子类对父类允许访问的方法或者属性自动共享的这样一种机制就称之为继承。优点在于1、减少冗余代码,提高代码复用性 2、提高开发效率,使代码更加简洁。
封装
隐藏具体的内部实现细节,提供统一的公共的对外访问的接口。优点在于 1、提高代码的安全性 2、可以控制变量 3、便利性。
多态
顾名思义,就是多种形态。java中的多态又分为两种,一种是编译时多态,一种是运行时多态,编译时多态我们又称之为静态多态性,就是在编译的时候(就是我们编码的时候)就可以确定具体调用的哪一个,例如我们的方法重载(重载:方法名相同,参数类型或个数不同的方法),运行时多态又称之为动态多态性,就是在运行的时候才能确定调用的是哪一个,在java中的具体体现为,父类引用指向子类对象,父类引用根据不同的子类对象在处理同一行为的时候可以产生不同的结果。