抽象类是Java中的一种特殊类,它不能被实例化,只能被继承。抽象类通常用于定义一些通用的属性和方法,而具体的实现则由其子类来完成。
下面是Java抽象类的代码案例:
public abstract class Animal {
private String name;
private int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public abstract void makeSound();
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
定义了一个Animal抽象类,它包含了两个私有属性name和age,以及一个抽象方法makeSound()。由于Animal是一个抽象类,所以它不能被实例化,只能被继承。子类必须实现makeSound()方法。
public abstract class Shape {
private String color;
public Shape(String color) {
this.color = color;
}
public abstract double getArea();
public String getColor() {
return color;
}
}
定义了一个Shape抽象类,它包含了一个私有属性color,以及一个抽象方法getArea()。由于Shape是一个抽象类,所以它不能被实例化,只能被继承。子类必须实现getArea()方法。
public abstract class BankAccount {
private String accountNumber;
private double balance;
public BankAccount(String accountNumber, double balance) {
this.accountNumber = accountNumber;
this.balance = balance;
}
public abstract void deposit(double amount);
public abstract void withdraw(double amount);
public String getAccountNumber() {
return accountNumber;
}
public double getBalance() {
return balance;
}
}
定义了一个BankAccount抽象类,它包含了两个私有属性accountNumber和balance,以及两个抽象方法deposit()和withdraw()。由于BankAccount是一个抽象类,所以它不能被实例化,只能被继承。子类必须实现deposit()和withdraw()方法。
这些展示了抽象类的基本用法,它们可以作为其他类的基类,提供一些通用的属性和方法,而具体的实现则由子类来完成。