UML : 통합 모델링 언어(UML, 영어: Unified Modeling Language)는 소프트웨어 공학에서 사용되는 표준화된 범용 모델링 언어이다.

위 다이어그램을 코드로 옮긴다면
package org.example;
class Duck{
public void quack(){
System.out.println("quack! quack!");
}
public void swim(){
System.out.println("SWIM SWIM");
}
public void display(){
System.out.println("DUCK!");
}
}
class MallardDcuk extends Duck{
@Override
public void display() {
System.out.println("it looks like Mallard!");
}
}
class Readheadduck extends Duck{
@Override
public void display() {
System.out.println("it looks like ReadHead!");
}
}
public class main {
public static void main(String[] args) {
Readheadduck r=new Readheadduck();
MallardDcuk m=new MallardDcuk();
r.display();
m.swim();
}
}

상속 부분은 Extends를 사용 실체화 관계 부분은 interface로 생성, implement를 사용하여 작성
메인에서 new 를 이용해 객체를 생성하고 사용하면 됨
intelliJ 기준 ctr + o 를 통해 쉽게 오버라이딩 가능
package org.example;
interface Flyable{
void fly();
}
interface Quackable{
void quack();
}
class Duck{
public void quack(){
System.out.println("quack! quack!");
}
public void swim(){
System.out.println("SWIM SWIM");
}
public void display(){
System.out.println("DUCK!");
}
}
class MallardDcuk extends Duck implements Flyable ,Quackable{
@Override
public void display() {
System.out.println("it looks like Mallard!");
}
@Override
public void fly() {
}
}
class Readheadduck extends Duck implements Flyable, Quackable{
@Override
public void display() {
System.out.println("it looks like ReadHead!");
}
@Override
public void fly() {
}
}
class RubberDuck extends Duck implements Quackable{
@Override
public void quack() {
}
@Override
public void display() {
System.out.println("looks like RubberDuck!");
}
}
class DecoyDuck extends Duck{
@Override
public void display() {
System.out.println("it looks like DecoyDuck");;
}
}
public class main {
public static void main(String[] args) {
Readheadduck r=new Readheadduck();
MallardDcuk m=new MallardDcuk();
}
}
'Java' 카테고리의 다른 글
[Java]_JAVA로 디자인패턴 공부_Factory method Pattern (0) | 2021.07.15 |
---|---|
[Java]_JAVA로 디자인패턴 공부_Decorator Patter (0) | 2021.07.15 |
[Java]_JAVA로 디자인패턴 공부_Observer Pattern (0) | 2021.07.14 |
[Java]_JAVA로 디자인패턴 공부_Strategy Pattern (0) | 2021.07.14 |
[Java]_#1 (0) | 2021.07.05 |