일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Doit #Doit오라클 #Doit시리즈 #연습문제
- cos.jar #cos드라이버 #파일업로드드라이버 #루피는귀여워 #마이바티스 #MyBatis #마이바티스sql #마이바티스DB #마이바티스jsp #마이바티스이클립스 #mapper #config.xml #마이바티스다운로드
- Init-param #context-param #
- 기말고사 #방통대기말고사 #방통대후기 #방통대기말고사후기 #방통대2023년1학기 #방통대1학기 #방통대C프로그래밍 #방통대장학금 #방통대영어회화1
- 어노테이션 #@WebServlet #WebServlet #
- 자바웹프로그래밍
- 갤러리제작 #갤러리만들기 #jsp갤러리 #jsp게시판 #jsp프로그래밍 #jsp웹프로그래밍 #jsp웹 #jsp모델1방식 #사진업로드 #jsp사진업로드 #jdbc6 #jdbc드라이버다운 #jdbc드라이버무료다운
- Controller
- QUERY #DML #SQL문 #내림차순정렬 #오름차순정렬
- View #
- 자바 #웹자바 #webJava #java #코딩 #코딩초보 #ojdbc #서블릿 #자바서블릿 #javaServelet #servelet #httpServlet
- union #sql99 #외부조인 #오라클조인 #sql조인 #자체조인 #비등가조인 #비등가조인 #테이블복사 #오라클테이블 #null인데이터출력
- 자바 #웹자바 #JAVA #WEB #WEBJAVA #WEBPROGRAMMING #웹 #웹프로그래밍 #코딩 #CODING #모델1 #모델2 #모델1방식 #모델2방식
- 방통대 #방송통신대학교 #컴퓨터과학 #컴퓨터과학과 #컴과 #방통대컴퓨터과학과 #방통대컴과 #방통대파이썬 #방통대C #방통대자바
- 서블릿 #자바모델1 #자바모델2 #mvc #mvc패턴
- sql #오라클 #불리언형 #boolean #webjava #java #jsp #Mybatis #마이바티스 #마이바티스환경설정 #모델1 #모델1프로그래밍 #Batis #마이바티스다운로드 #web설정 #웹프로그래밍 #게시판 #게시판제작 #게시판만
- java #array #자바 #배열 #프로그래밍 #코딩 #자바프로그래밍
- 정처기필기합격 #정처기합격후기
- 서블릿선언 #서블릿선언방법 #
- 마이바티스환경설정
- tern다운로드 #메이븐다운로드 #maven #스프링라이브러리 #자바라이브러리 #톰캣설정 #WAS #웹어플리케이션서버
- 정처기3회 #정보처리기사2023
- 정처기 #정처기필기 #정보처리기사 #정보처리기사필기 #정보처리기사2023 #정처기2023 #정처기3회 #정보처리기사3회 #정보처리기사실기 #정처기실기 정처기합격
- ORACLE #TIGER #SCOTT #SCOTT계정 #오라클학습계정 #프로그래밍 #SQL #SQLORACLE #오라클 #오라클연습 #오라클연습계정 #오라클연습문제 #WHERE절 #오라클조건절
- spring #스프링 #전자정부표준프레임워크 #표준프레임워크 #자바스프링 #스프링다운로드 #자바스크립트 #웹프로그래밍설정 #웹프로그래밍셋팅
- html #자바와서블릿 #자바와웹연결 #웹연결
- jsp #게시판만들기 #자바로게시판만들기 #웹테스트 #JNDI #myora #Oracle #오라클 #DAO #DTO #아파치톰캣 #웹자바셋팅 #모델1 #모델1방식 #모델1방식웹프로그래밍 #웹프로그래밍
- Model #
- web.xml #배포지시자 #서블릿테스트
- 8 실무에서 가장 많이 사용하는 SQL
Archives
- Today
- Total
장미의 개발일기
메소드 오버라이딩(Method Overriding) 본문
자바같은 객체지향 언어에서 매우 중요한 개념중 하나!
개념관련 포스팅은 나중에 해보려고 한다.
우선 연습한 예제.
//회사 모든 부서를 관리하는 중앙부서(슈퍼클래스)
//각 모형을 제작하는 원, 삼각형, 사각형 부서(서브클래스)
//원 부서에 처음엔 오버라이딩 하지말고, 다른 메소드를 적용시켜보기.
//그 후에 오버라이딩해서 비교해보기
//메인함수에서 슈퍼클래스형 배열을 생성하여, 서브클래스 객체들을 대입하기.
//For-each문을 이용하여 객체 3개에 슈퍼클래스에서 상속 받았던 색,로고 기본 값을
메인에 게시된 색,로고 값으로 바꿔보기
// 오버라이딩했던 메소드도 for each문 안에서 간단하게 실행시켜보기
1. 슈퍼클래스: 메인팀
package company;
public class MainTeam {
private String color;
private char logo;
public MainTeam() {
color = "검은색";
logo = '♥';
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public char getLogo() {
return logo;
}
public void setLogo(char logo) {
this.logo = logo;
}
public void drawSomething() {
System.out.println("오버라이딩이 안되서 나타나는 문구");
}
}
2. 서브클래스1: 원
package company;
public class Circle extends MainTeam{
@Override public void drawSomething() {
System.out.println("Circle 팀이 "+getColor()+getLogo()+"을 그렸습니다."); }
public void drawCircle() {
System.out.println("Circle 팀이 "+getColor()+getLogo()+"을 그렸습니다.");
}
}
3.서브클래스2 : 삼각형
package company;
public class Triangle extends MainTeam {
@Override
public void drawSomething() {
System.out.println("Triangle 팀이 "+getColor()+getLogo()+"을 그렸습니다.");
}
}
4.서브클래스3 : 사각형
package company;
public class Rantangle extends MainTeam {
@Override
public void drawSomething() {
System.out.println("Rantangle 팀이 "+getColor()+getLogo()+"을 그렸습니다.");
}
}
5. 메인 함수
package company;
public class CompanyMain {
public static void main(String[] args) {
Circle ref1 = new Circle();
Triangle ref2 = new Triangle();
Rantangle ref3 = new Rantangle();
MainTeam[] teams = {ref1, ref2, ref3};
String[] colors = {"분홍색", "노랑색", "파랑색"};
char[] logos = {'○','▲','□'};
int i=0;
for(MainTeam e : teams) {
e.setColor(colors[i]);
e.setLogo(logos[i]);
e.drawSomething();
i++;
}
}
}
출력화면:
1. 원 클래스의 오버라이딩 메소드 부분을 주석처리 후 실행
원 클래스도 오버라이딩된 메소드를 실행시켜서 출력된 정상 화면.
오버라이딩을 사용하면, 더 유연하고 간결한 코드를 짤 수 있다.
'개발일기 > Java' 카테고리의 다른 글
인터페이스 상속 : 예제 ( 중앙부서, 모형부서3) (0) | 2023.04.25 |
---|---|
메소드 오버라이딩 : 다른 예제 (동물) (0) | 2023.04.25 |
헷갈리는 메모리 영역 정리 : 힙영역 + 클래스 캐스팅 (0) | 2023.04.24 |
Java equals 함수 주의점 : String class / Do it! 자바 완전 정복 (김동형) -연습문제 (0) | 2023.04.22 |
클래스 조금 아는 상태에서 회원정보 등록하고, 출력하는 프로그램 만들기 (0) | 2023.04.20 |