JAVA23种开发模式详解(代码举例)demo

阅读: 评论:0

2024年2月4日发(作者:)

JAVA23种开发模式详解(代码举例)demo

public class CPU {

public void startup(){

n("cpu startup!");

}

public void shutdown(){

n("cpu shutdown!");

}

}

public class Memory {

public void startup(){

n("memory startup!");

}

public void shutdown(){

n("memory shutdown!");

}

}

public class Disk {

public void startup(){

n("disk startup!");

}

public void shutdown(){

n("disk shutdown!");

}

}

public class Computer {

private CPU cpu;

private Memory memory;

private Disk disk;

public Computer(){

cpu = new CPU();

memory = new Memory();

disk = new Disk();

}

public void startup(){

n("start the computer!");

p();

p();

p();

n("start computer finished!");

}

public void shutdown(){

n("begin to close the computer!");

wn();

wn();

wn();

n("computer closed!");

}

}User类如下:

public class MyCollection implements Collection {

public String string[] = {"A","B","C","D","E"};

@Override

public Iterator iterator() {

return new MyIterator(this);

}

@Override

public Object get(int i) {

return string[i];

}

@Override

public int size() {

return ;

}

}

public class MyIterator implements Iterator {

private Collection collection;

private int pos = -1;

public MyIterator(Collection collection){

tion = collection;

}

@Override

public Object previous() {

if(pos > 0){

pos--;

}

return (pos);

}

@Override

public Object next() {

if(pos<()-1){

pos++;

}

return (pos);

}

@Override

public boolean hasNext() {

if(pos<()-1){

return true;

}else{

return false;

}

}

@Override

public Object first() {

pos = 0;

return (pos);

}

}测试类:

public class Original {

private String value;

public String getValue() {

return value;

}

public void setValue(String value) {

= value;

}

public Original(String value) {

= value;

}

public Memento createMemento(){

return new Memento(value);

}

public void restoreMemento(Memento memento){

= ue();

}

}

public class Memento {

private String value;

public Memento(String value) {

= value;

}

public String getValue() {

return value;

}

public void setValue(String value) {

= value;

}

}

public class Storage {

private Memento memento;

public Storage(Memento memento) {

o = memento;

}

public Memento getMemento() {

return memento;

}

public void setMemento(Memento memento) {

o = memento;

}

}测试类:

public interface Mediator {

public void createMediator();

public void workAll();

}

public class MyMediator implements Mediator {

private User user1;

private User user2;

public User getUser1() {

return user1;

}

public User getUser2() {

return user2;

}

@Override

public void createMediator() {

user1 = new User1(this);

user2 = new User2(this);

}

@Override

public void workAll() {

();

();

}

}

public abstract class User {

private Mediator mediator;

public Mediator getMediator(){

return mediator;

}

public User(Mediator mediator) {

or = mediator;

}

public abstract void work();

}

public class User1 extends User {

public User1(Mediator mediator){

super(mediator);

}

@Override

public void work() {

n("user1 exe!");

}

}

public class User2 extends User {

public User2(Mediator mediator){

super(mediator);

}

@Override

public void work() {

n("user2 exe!");

}

}

JAVA23种开发模式详解(代码举例)demo

本文发布于:2024-02-04 06:54:24,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170700086452533.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:详解   模式   代码   开发   举例
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23