YSHUSH

Abstract class 본문

Coding/Java

Abstract class

코딩; 2021. 12. 17. 05:04

Main class 

/*
	Abstract class : 추상 클래스
			추상 메소드를 하나이상 포함하고 있는 클래스
			일반 메소드를 포함하고 있다.
			멤버 변수도 선언할 수 있다.
					 
	Abstract method : 내용(처리)은 없고 prototype(매개변수, 리턴값)만 선언되어 있는 메소드
	
	 			public void method(char c, int i){
	 				process
	 			}
	 			
	 			public abstract void method(char c, int i);	 
*/


public class MainClass {

	public static void main(String[] args) {		

		// AbstractClass ac = new AbstractClass(); 생성안됨
		
		MyClass mycls = new MyClass();
		mycls.method();
		mycls.abstractMethod();
		
		AbstractClass ac = new MyClass();
		ac.method();
		ac.abstractMethod();
		
		((MyClass)ac).func();
		
		MyClass my = (MyClass)ac;
		my.func();
		
		YouClass you = new YouClass();
		you.abstractMethod();
		
		AbstractClass ac1 = new YouClass(); 		
	}
}

 


Abstract class 

public abstract class AbstractClass {
	
	private String name;
	
	public AbstractClass() {
	}
	
	public void method() {
		System.out.println("AbstractClass method()");
	}

	public abstract void abstractMethod();
	
}

 


My class 

public class MyClass extends AbstractClass{

	@Override
	public void abstractMethod() {
		System.out.println("MyClass abstractMethod()");
	}
	
	public void func() {
		System.out.println("MyClass func()");
	}	
}

 


You class 

public class YouClass extends AbstractClass {

	@Override
	public void abstractMethod() {
		System.out.println("YouClass abstractMethod()");
	}
}

 

'Coding > Java' 카테고리의 다른 글

Name card(interface)  (0) 2021.12.17
Interface  (0) 2021.12.17
Over ride3  (0) 2021.12.16
Over ride.2  (0) 2021.12.16
Over ride.1  (0) 2021.12.16