Java基础-对象的特性:继承、封装、多态
Java 是一门面向对象的编程语言,其中对象的特性包括继承、封装和多态。下面对这三个特性进行详细介绍:
1、继承
继承是指一个类可以继承另一个类的属性和方法。被继承的类称为父类或基类,继承的类称为子类或派生类。子类可以使用父类的属性和方法,也可以对其进行修改或扩展。在 Java 中,使用关键字 extends
来实现继承。
试例:
public class Animal {
public void eat() {
System.out.println("Animal is eating");
}
}
public class Dog extends Animal {
public void bark() {
System.out.println("Dog is barking");
}
}
上面的代码中,Dog 继承了 Animal 类的 eat() 方法,并添加了 bark() 方法。
2、封装
封装是指将对象的属性和方法封装起来,只对外提供一些公共接口,隐藏内部实现细节,从而提高代码的安全性和可维护性。在 Java 中,使用访问修饰符来实现封装,包括 public、private、protected 和 default。其中,public 表示公共的,可以被任何类访问;private 表示私有的,只有本类中的方法可以访问;protected 表示受保护的,只有本类及其子类中的方法可以访问;default 表示默认的,只有同一个包中的类可以访问。
试例:
public class Person {
private String name;
private int age;
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
上面的代码中,Person 类的属性 name 和 age 被声明为 private,只能通过公共的 set 和 get 方法来访问。
3、多态
多态是指同一个方法可以根据不同的对象调用出现不同的行为。在 Java 中,多态有两种形式:静态多态和动态多态。静态多态是指方法重载,即在同一个类中定义多个同名但不同参数的方法;动态多态是指方法重写,即子类重写父类的方法。在 Java 中,使用关键字 @Override
来表明方法是被重写的。
试例:
public class Animal {
public void makeSound() {
System.out.println("Animal is making sound");
}
}
public class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("Dog is barking");
}
}
上面的代码中,Dog 类重写了 Animal 类的 makeSound() 方法,在调用 makeSound() 方法时,如果使用 Animal 对象调用,输出结果为 “Animal is making sound”,如果使用 Dog 对象调用,输出结果为 “Dog is barking”。这就是多态的效果。
继承、封装和多态是面向对象编程的三大特性,它们可以提高代码的重用性、可维护性和可扩展性。掌握这些特性,对于 Java 开发人员来说是非常重要的。