Java의 추상 클래스
선언에 추상 키워드가 포함된 클래스를 추상 클래스라고 합니다.
- 추상 클래스는 추상 메소드를 포함할 수도 있고 포함하지 않을 수도 있습니다. 즉, 본문이 없는 메소드( public void get(); )
- 그러나 클래스에 하나 이상의 추상 메소드가 있는 경우 해당 클래스는 추상으로 선언되어야 합니다.
- 클래스가 추상으로 선언되면 인스턴스화할 수 없습니다.
- 추상 클래스를 사용하려면 다른 클래스에서 클래스를 상속하고 그 클래스에 추상 메서드 구현을 제공해야 합니다.
- 추상 클래스를 상속받는 경우 그 안에 있는 모든 추상 메서드에 대한 구현이 있습니다.
예제
이 섹션에서는 추상 클래스의 예를 제공합니다. 추상 클래스를 만들려면 클래스 선언에서 클래스 키워드 앞에 abstract 키워드를 사용하면 됩니다.
/* File name : Employee.java */ public abstract class Employee { private String name; private String address; private int number; public Employee(String name, String address, int number) { System.out.println("Constructing an Employee"); this.name = name; this.address = address; this.number = number; } public double computePay() { System.out.println("Inside Employee computePay"); return 0.0; } public void mailCheck() { System.out.println("Mailing a check to " + this.name + " " + this.address); } public String toString() { return name + " " + address + " " + number; } public String getName() { return name; } public String getAddress() { return address; } public void setAddress(String newAddress) { address = newAddress; } public int getNumber() { return number; } }
Employee 클래스는 추상 메소드를 제외하면 Java의 일반 클래스와 동일하다는 것을 알 수 있습니다. 이제 클래스는 추상 클래스이지만 여전히 3개의 필드, 7개의 메서드 및 생성자가 있습니다.
이제 Employee 클래스를 -
/* File name : AbstractDemo.java */ public class AbstractDemo { public static void main(String [] args) { /* Following is not allowed and would raise error */ Employee e = new Employee("George W.", "Houston, TX", 43); System.out.println("\n Call mailCheck using Employee reference--"); e.mailCheck(); } }
로 인스턴스화할 수 있습니다. 위 클래스를 컴파일하면 다음과 같은 오류가 발생합니다. -
Employee.java:46: Employee is abstract; cannot be instantiated Employee e = new Employee("George W.", "Houston, TX", 43); ^ 1 error
위 내용은 Java의 추상 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











C++ 개발에서 코드 계층 관계 문제를 해결하는 방법 복잡한 C++ 프로그램을 개발할 때 일반적인 문제는 코드 계층 관계 관리입니다. 잘못된 계층 구조로 인해 코드를 읽고 유지 관리하고 확장하기가 어려워질 수 있습니다. 이 문제를 해결하기 위해 다음과 같은 전략을 채택할 수 있습니다. 첫째, 적절한 디렉터리 구조를 사용하여 코드 파일을 구성할 수 있습니다. 좋은 디렉터리 구조는 코드 파일을 보다 질서 있게 배열할 수 있으므로 개발 프로세스 중에 관련 코드를 더 쉽게 빠르게 찾거나 수정할 수 있습니다. 일반적으로 다음을 수행하는 것이 좋습니다.

C++의 일반적인 코드 재사용 문제에 대한 솔루션 C++ 프로그래밍에서 코드 재사용은 개발 효율성과 코드 유지 관리성을 향상시킬 수 있는 중요한 기술입니다. 그러나 반복되는 코드 조각, 복잡한 상속 관계 등과 같은 몇 가지 일반적인 코드 재사용 문제에 자주 직면합니다. 이 기사에서는 이러한 문제를 해결하는 몇 가지 일반적인 방법을 소개하고 구체적인 코드 예제를 제공합니다. 함수 캡슐화 함수 캡슐화는 코드 조각을 함수로 캡슐화하여 동일한 코드를 반복적으로 작성하지 않도록 다른 위치에서 여러 번 호출할 수 있는 일반적인 코드 재사용 방법입니다.

선언에 abstract 키워드가 포함된 클래스를 추상 클래스라고 합니다. 추상 클래스는 추상 메서드, 즉 본문이 없는 메서드(publicvoidget();)를 포함할 수도 있고 포함하지 않을 수도 있습니다. 그러나 클래스에 하나 이상의 추상 메서드가 있는 경우 해당 클래스는 추상으로 선언되어야 합니다. 클래스가 abstract로 선언되면 인스턴스화할 수 없습니다. 추상 클래스를 사용하려면 다른 클래스에서 해당 클래스를 상속하고 해당 클래스에 추상 메서드 구현을 제공해야 합니다. 추상 클래스에서 상속하는 경우 해당 클래스의 모든 추상 메서드에 대한 구현을 제공합니다. 예제 이 섹션에서는 추상 클래스의 예제를 제공합니다. 추상 클래스를 만들려면 클래스 선언에서 클래스 키워드 앞에 abstract 키워드를 사용하면 됩니다. /*파일명:Emplo

C++에서 객체지향 프로그래밍을 어떻게 합니까? 객체 지향 프로그래밍(OOP)은 매우 일반적이고 중요한 소프트웨어 개발 패러다임입니다. C++는 객체 지향 프로그래밍을 지원하는 다중 패러다임 프로그래밍 언어입니다. C++에서는 클래스와 객체의 개념을 통해 객체지향 프로그래밍을 쉽게 구현할 수 있습니다. 먼저 클래스를 정의해야 합니다. 수업은 습관이다

추상 클래스를 사용하여 PHP 애플리케이션의 인프라를 구축하는 방법 요약: PHP 애플리케이션 개발에서 추상 클래스는 매우 중요한 도구입니다. 이 기사에서는 추상 클래스를 사용하여 PHP 애플리케이션의 인프라를 구축하는 방법을 소개하고 독자의 이해를 돕기 위한 코드 예제를 제공합니다. 소개: 추상 클래스는 직접 인스턴스화할 수 없는 클래스입니다. 주로 공유 속성과 메서드를 정의하고 하위 클래스에 대한 표준 템플릿을 제공하는 데 사용됩니다. 추상 클래스는 상속될 수 있으며 하위 클래스는 상위 클래스의 모든 추상 메서드를 구현해야 합니다. PHP 애플리케이션에서는 펌프를 사용합니다.

우리는 이진 검색 알고리즘이 선형 검색 알고리즘보다 낫다는 것을 알고 있습니다. 이 알고리즘을 실행하는 데 필요한 시간은 O(logn)입니다. 그러나 대부분의 경우 구현된 코드에 몇 가지 문제가 있습니다. 아래와 같이 이진 검색 알고리즘 함수를 고려해 보겠습니다. 예 intbinarySearch(intarray[],intstart,intend,intkey){ if(start<=end){ intmid=(start+end)/2);//midlocationof

Java 프로그래밍에서 프록시 최종 클래스의 강제 상속을 통해 더 나은 코드 추상화를 달성하는 방법은 무엇입니까? 소개: Java 프로그래밍에서는 기존 클래스를 확장해야 하는 상황에 자주 직면합니다. 그러나 때때로 우리가 접하는 클래스가 final로 선언되어 상속될 수 없는 경우가 있습니다. 그렇다면 이 경우 코드 추상화 및 재사용을 달성하는 방법은 무엇입니까? 이 기사에서는 코드 보안을 유지하면서 더 나은 코드 추상화를 달성하기 위해 강제 상속을 통해 최종 클래스를 위임하는 방법을 소개합니다. Java 최종 클래스의 제한 사항

super 변수는 직접 상위 클래스 인스턴스를 참조합니다. 슈퍼 변수는 직접 상위 클래스 메서드를 호출할 수 있습니다. super()는 직접적인 부모 클래스 생성자 역할을 하며 자식 클래스 생성자의 첫 번째 줄에 있어야 합니다. 재정의된 메서드의 슈퍼클래스 버전을 호출할 때는 super 키워드를 사용하세요. 라이브 데모 예시 classAnimal{ publicvoidmove(){ System.out.println("Animalscanmove");
