Java抽象クラス
目次抽象クラス 抽象クラス特徴 抽象クラスの使用方法 抽象クラスは
抽象メソッドがあります. 不完全クラスなので、それ自体はオブジェクト化できません. 抽象クラスを継承する子クラスは、親クラスにある必要があります.
すべての抽象的な方法を実現しなければならない. 抽象クラスの使用方法
抽象クラスは
抽象クラスとは、メソッドを実装せずに定義された形状のみの抽象クラスを指す.
メソッドに{}(カッコ)がない場合、メソッドで定義および実装される区分メソッドは実装である.
抽象クラスは不完全クラスとも呼ばれます.
抽象クラスを使用する理由は,抽象メソッドである親が継承する子クラスに無条件に抽象メソッドを実装するためである.
抽象クラスの特徴
すべての抽象的な方法を実現しなければならない.
抽象クラスの使用方法
抽象クラスの使用abstract class 클래스 명{}
抽象メソッドの使用abstract 데이터 타입 메서드명();
例)抽象クラスの継承// 추상 메서드 선언
abstract class AbstractParent{
//변수 선언
int value = 10;
// 일반 메서드 구현
void parentMethod() {
System.out.println("일반 메서드");
}
// 추상 메서드 정의
abstract void absMethod();
}
class AbstractChild extends AbstractParent{
@Override
void absMethod() {
System.out.println("추상 메서드 구현");
}
}
public class Abstract {
public static void main(String[] args) {
AbstractChild ac = new AbstractChild();
System.out.println("추상 클래스인 부모 클래스 변수 -> " + ac.value);
ac.parentMethod(); // 부모 클래스에서 일반 메서드 호출
ac.absMethod(); // 자식 클래스에서 부모 클래스 추상 클래스를 구현한 메서드를 호출
}
}
抽象クラスの継承
抽象クラス間でも継承できます.別の抽象クラスに継承されたサブクラスは、継承された抽象クラスと、以前に継承されたすべての抽象クラスを実現する必要があります.
例)抽象クラスの継承abstract class Abstract1 {
abstract void abstract1Method();// 첫 번째 추상 메서드 정의
}
abstract class Abstract2 extends Abstract1 {
abstract void abstract2Method(); // 두 번째 메서드 정의
}
class GeneralClass extends Abstract2 {
void abstract1Method() {
System.out.println("abstract1 Method"); // 첫 번째 추상 메서드 구현
}
void abstract2Method() {
System.out.println("abstract2 Method"); // 두 번째 추상 메서드 구현
}
}
public class Abstract02 {
public static void main(String[] args) {
GeneralClass gc = new GeneralClass();
gc.abstract1Method(); // 첫 번째 메서드 호출
gc.abstract2Method(); // 두 번째 메서드 호출
}
}
出力結果:
abstract1 Method
abstract2 Method
以上が抽象クラスです.エラーや不足点があれば、フィードバックに感謝します.!!
Reference
この問題について(Java抽象クラス), 我々は、より多くの情報をここで見つけました
https://velog.io/@sunnamgung8/자바-추상-클래스
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
abstract class 클래스 명{}
abstract 데이터 타입 메서드명();
// 추상 메서드 선언
abstract class AbstractParent{
//변수 선언
int value = 10;
// 일반 메서드 구현
void parentMethod() {
System.out.println("일반 메서드");
}
// 추상 메서드 정의
abstract void absMethod();
}
class AbstractChild extends AbstractParent{
@Override
void absMethod() {
System.out.println("추상 메서드 구현");
}
}
public class Abstract {
public static void main(String[] args) {
AbstractChild ac = new AbstractChild();
System.out.println("추상 클래스인 부모 클래스 변수 -> " + ac.value);
ac.parentMethod(); // 부모 클래스에서 일반 메서드 호출
ac.absMethod(); // 자식 클래스에서 부모 클래스 추상 클래스를 구현한 메서드를 호출
}
}
abstract class Abstract1 {
abstract void abstract1Method();// 첫 번째 추상 메서드 정의
}
abstract class Abstract2 extends Abstract1 {
abstract void abstract2Method(); // 두 번째 메서드 정의
}
class GeneralClass extends Abstract2 {
void abstract1Method() {
System.out.println("abstract1 Method"); // 첫 번째 추상 메서드 구현
}
void abstract2Method() {
System.out.println("abstract2 Method"); // 두 번째 추상 메서드 구현
}
}
public class Abstract02 {
public static void main(String[] args) {
GeneralClass gc = new GeneralClass();
gc.abstract1Method(); // 첫 번째 메서드 호출
gc.abstract2Method(); // 두 번째 메서드 호출
}
}
Reference
この問題について(Java抽象クラス), 我々は、より多くの情報をここで見つけました https://velog.io/@sunnamgung8/자바-추상-클래스テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol