我正在努力解释java中的oop概念.
oop的一个主要原则是物体有方法; 所以Object.method(); 作品.我将其与程序编程进行对比,其中必须使用方法(Object).
这称为封装吗?
oop方式有哪些优点?
OOP的另外两个优点是重用和多态性。
重用:
如果您doSomething(Object)在一个文件或一个程序中使用,它可能适合该程序。现在,假设您需要Object在另一个程序中使用您的。您需要doSomething()在新程序中复制该方法(可能是复制并粘贴它)。这可能有效,但这是一种不好的做法,并且使维护该逻辑成为一场噩梦。如果doSomething()逻辑是内部的函数Object,那么该逻辑与对象“共存”。
多态性:
想象另一种情况,对象只是许多相似类型中的一种。如果您利用接口,许多对象都可以实现该doSomething()功能以满足其特定需求。
例子:
interface ICar
{
void doSomething();
void getFuel();
}
class GasCar : ICar
{
public void doSomething()
{
//do something a gas car would do
}
public void getFuel()
{
//logic to pull gas out of a tank
}
}
class ElectricCar : ICar
{
public void doSomething()
{
//do something an electric car would do
}
public void getFuel()
{
//logic to pull fuel out of a battery
}
}
Run Code Online (Sandbox Code Playgroud)