java如何复用代码
复用代码的方法
在Java中,复用代码是提高开发效率和维护性的关键。以下是几种常见的代码复用方法:
继承
通过继承机制,子类可以复用父类的属性和方法。子类可以扩展或重写父类的功能。
class Animal {
void eat() {
System.out.println("Eating...");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Barking...");
}
}
组合
组合是通过将其他类的实例作为成员变量来实现代码复用。这种方式更灵活,避免了继承的局限性。
class Engine {
void start() {
System.out.println("Engine started.");
}
}
class Car {
private Engine engine;
Car() {
engine = new Engine();
}
void start() {
engine.start();
}
}
接口
接口定义了一组方法规范,实现接口的类必须提供这些方法的具体实现。接口可以实现多态和代码复用。
interface Drawable {
void draw();
}
class Circle implements Drawable {
public void draw() {
System.out.println("Drawing a circle.");
}
}
class Square implements Drawable {
public void draw() {
System.out.println("Drawing a square.");
}
}
工具类
将常用的功能封装在静态方法中,通过工具类直接调用。例如Java中的Math类。
class StringUtils {
public static boolean isEmpty(String str) {
return str == null || str.trim().isEmpty();
}
}
设计模式
使用设计模式如工厂模式、单例模式、策略模式等,可以有效地复用代码并提高可维护性。
// 单例模式示例
class Singleton {
private static Singleton instance;
private Singleton() {}
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
泛型
泛型允许在定义类、接口或方法时使用类型参数,提高代码的复用性和类型安全性。
class Box<T> {
private T content;
public void setContent(T content) {
this.content = content;
}
public T getContent() {
return content;
}
}
方法重载
通过方法重载,可以在同一个类中定义多个同名方法,但参数列表不同,实现类似功能的复用。

class Calculator {
public int add(int a, int b) {
return a + b;
}
public double add(double a, double b) {
return a + b;
}
}






