Java是当下最流行的面向对象的编程语言之一。下面让我们通过继承、封装、多态这三大特性走进Java。
java特性之继承
-
什么是继承
一个新类从已有的类那里获得其已有属性和方法,描述的是类之间的一种关系,这种关系叫类的继承。 -
继承的优势和劣势
优势:
提高代码的复用行,使得代码更简洁;
类之间形成明显的层次体系结构;
为多态创造条件。
劣势:
提高了类之间的耦合度,使得代码的独立性变差。 -
继承的特点及注意事项
一个类只能继承一个父类;
子类拥有父类的非private修饰的方法和属性;
子类可以对父类进行扩展,即拥有自己的独有的属性和方法。
支持单继承和多重继承,但不支持多继承。即A类继承了父类B,同时B类继承了父类C类,这叫多重继承,是允许的;但如果A类同时继承了父类B和父类C,这是多继承,是不允许的。
所有的类都继承了java.lang.Object; -
继承的关键字
extends关键字:用于子类继承父类;
super关键字:在子类中使用,相当与是当前对象的父类,可以实现对父类成员的访问;
this关键字:指向自己的引用;
final关键字:修饰类时,表示该类是最终类,不能被继承,例如java.lang.String;修饰方法时,表示该方法不能被子类方法重写。
java特性之封装
-
什么是封装
封装是将实现细节进行包装,隐藏,防止被外部类定义的代码随机访问。最要的功能是体现在我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。核心思想是“隐藏细节”,“数据安全”。 -
封装的好处和缺点
好处:
良好的封装可以降低代码的耦合性;
类内部的结构可以自由修改;
可以对成员变量进行更精细控制;
可以隐藏信息及实现细节。
缺点:
会影响执行效率。 -
实现封装步骤
修改属性的可见性,限制对属性的访问,一般限制为private;
为每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问。 -
修饰权限访问关键字
public:最大的访问权限;
protected:主要是用来子类,子类可以访问这些成员属性,其余类不可以。
default:类所在的包可以访问。
private:最小的访问权限,只允许本类内部进行访问。
java特性之多态
-
什么是多态
同一行为具有多个不同表现形式或者形态的能力。比如同样一个快捷键F1,在软件A中表示复制,软件B中表示删除,软件C中表示回车;同一事件发生在不同的对象上会产生不同的结果。 -
多态的必要条件
实现多态必须满足以下三个条件:
继承、重写、父类引用指向子类对象。 -
多态的优缺点
提高了代码的可维护性;
提高了代码的可扩展性; -
多态的应用场景
重写;
接口;
抽象类和抽象方法;