java public的抽象类的方法在别的类可以用吗
时间: 2024-04-07 22:30:57 浏览: 41
抽象类中的方法可以在其他类中使用,但是抽象类中的抽象方法必须在子类中实现后才能被调用。如果一个类继承了抽象类,那么它必须实现所有的抽象方法,否则它也必须声明为抽象类。除此之外,抽象类中的非抽象方法也可以被子类继承和重写。需要注意的是,如果一个抽象类中的方法被声明为私有的,那么它就不能被子类继承和实现。
相关问题
Java抽象类中可以有普通方法吗
是的,在Java中,抽象类中可以有普通方法,也可以有抽象方法。
抽象类是一种特殊的类,它不能被实例化,只能被用作其他类的父类。在抽象类中,可以定义抽象方法,也可以定义普通方法。
抽象方法是一种没有实际内容的方法,它只有一个声明,没有方法体。抽象方法必须在抽象类中声明,并且必须在子类中实现。
普通方法是一种有实际内容的方法,它有一个声明和一个方法体。普通方法可以在抽象类中声明,也可以在子类中实现。
例如:
```
public abstract class Shape {
public abstract double getArea();
public double getPerimeter() {
// 实现
}
}
```
在这个例子中,Shape是一个抽象类,它包含了一个抽象方法getArea()和一个普通方法getPerimeter()。
Java抽象类和抽象方法
Java抽象类和抽象方法是面向对象编程中的重要概念。抽象类是一种不能被实例化的类,它只能作为其他类的父类来使用。抽象方法是在抽象类中声明但没有具体实现的方法,它需要在子类中被重写实现。
以下是Java抽象类和抽象方法的介绍和示例:
1. 抽象类的定义和用法:
抽象类是通过在类名前面加上关键字"abstract"来定义的。抽象类可以包含抽象方法和非抽象方法。抽象方法用于定义接口规范,而非抽象方法用于提供通用的实现。
示例代码:
```java
abstract class Animal {
// 抽象方法
public abstract void sound();
// 非抽象方法
public void sleep() {
System.out.println("Animal is sleeping");
}
}
```
2. 抽象方法的定义和用法:
抽象方法是在抽象类中声明但没有具体实现的方法。抽象方法只有方法的声明,没有方法体。子类必须实现抽象方法,否则子类也必须声明为抽象类。
示例代码:
```java
abstract class Person {
public abstract void run();
}
class Student extends Person {
public void run() {
System.out.println("Student is running");
}
}
```