>  기사  >  Java  >  자바의 추상 클래스

자바의 추상 클래스

高洛峰
高洛峰원래의
2016-11-19 16:30:101524검색

추상 클래스: abstract 키워드를 사용하세요. 클래스가 추상으로 수정되면 이를 추상 클래스라고 합니다.
추상이 메서드를 수정하는 경우 이 메서드를 추상 메서드라고 합니다.
추상이 클래스를 수정하는 경우 이 클래스를 추상 클래스라고 합니다.
클래스가 추상 클래스를 상속하는 경우 추상 클래스에 추상 메소드를 구현해야 합니다.

추상 키워드 사용:

메서드 본문: 메서드 중 중괄호의 내용이 메서드 본문입니다.
1. 메소드에 메소드 본문이 없으면 메소드를 추상으로 수정해야 합니다.
2. 클래스에 추상 메소드가 있는 경우 클래스를 추상 클래스로 수정해야 추상 클래스가 됩니다.
3. 비추상 클래스가 이 추상 클래스를 상속하는 경우 모든 추상 메서드는 이 비추상 클래스에서 다시 작성되어야 합니다.
4. 추상 클래스는 비추상 메소드를 가질 수 있습니다.
5. 추상 클래스에는 생성자 메서드가 있을 수 있습니다. 이 함수는 하위 클래스가 상위 클래스의 변수를 초기화할 수 있도록 하는 것입니다.
6. 추상 클래스는 객체를 생성할 수 없습니다.
이유: 객체를 생성하면 객체가 추상 메소드를 호출할 수 있으므로 추상 메소드를 호출하는 것은 의미가 없습니다.

7. 추상 메서드는 추상 클래스에 나타날 필요가 없습니다.

추상 키워드의 사용 시나리오:
사물을 설명할 때 그 사물이 특정한 동작을 가지고 있음을 발견하지만 이 동작은 구체적이지 않으며 이때 이 동작을 추출할 수 있다고 선언합니다. 구현되지 않은 동작을 추상 동작이라고 합니다. 그러면 이때 추상 클래스를 사용해야 합니다.

//추상 키워드로 수정된 클래스를 추상 클래스라고 합니다.
추상 클래스 Animal
{
문자열 이름;
문자열 색상;
abstract public void run();//추상 메소드에는 본체가 없고 메소드의 구체적인 구현이 없습니다.

public void eat (){
System.out.println("Animals are eating");
}

}

//Yifei 추상 클래스는 추상 클래스를 상속하며 추상 클래스의 모든 메서드를 구현해야 합니다.
Dog 확장 Animal
{

//상위 클래스의 run 메소드를 재정의해야 합니다

public void run(){

System. out.println(name + "Running fast");
}

}

class Fish Extensions Animal
{
//다시 작성 방법: 다시 작성할 필요 없음 쓰기 실행 방법.

//다시 작성해야 하는데 그럴 필요는 없습니다. 이로 인해 쉽게 문제가 발생할 수 있습니다.

//하위 클래스가 상위 클래스의 메서드를 재정의하도록 강제하는 방법을 생각해 보세요

public void run(){
System.out.println(name+"游德Soon" );
}
}

class Demo8
{
public static void main(String[] args)
{

Dog d = new Dog ();
d.name = "코카서스";
d.run();
d.eat();
Fish fish = new Fish();
fish .name = "고래";
fish.run();
fish.eat();
}
}


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:자바API다음 기사:자바API