From a9241773bb7b45ffe1f2efb2030f3c54291af734 Mon Sep 17 00:00:00 2001 From: Ahmed <148449109+202201638@users.noreply.github.com> Date: Mon, 13 Jan 2025 23:43:27 +0200 Subject: [PATCH] Add files via upload --- visitor/src/main/java/Singleton.java | 24 ++++++++++++++++++ .../com/iluwatar/visitor/SingletonTest.java | 23 +++++++++++++++++ visitor/target/classes/Singleton.class | Bin 0 -> 654 bytes .../classes/com/iluwatar/visitor/App.class | Bin 0 -> 1014 bytes .../com/iluwatar/visitor/Commander.class | Bin 0 -> 783 bytes .../iluwatar/visitor/CommanderVisitor.class | Bin 0 -> 1190 bytes .../com/iluwatar/visitor/Sergeant.class | Bin 0 -> 778 bytes .../iluwatar/visitor/SergeantVisitor.class | Bin 0 -> 1177 bytes .../com/iluwatar/visitor/Soldier.class | Bin 0 -> 773 bytes .../com/iluwatar/visitor/SoldierVisitor.class | Bin 0 -> 1178 bytes .../classes/com/iluwatar/visitor/Unit.class | Bin 0 -> 1516 bytes .../com/iluwatar/visitor/UnitVisitor.class | Bin 0 -> 267 bytes 12 files changed, 47 insertions(+) create mode 100644 visitor/src/main/java/Singleton.java create mode 100644 visitor/src/test/java/com/iluwatar/visitor/SingletonTest.java create mode 100644 visitor/target/classes/Singleton.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/App.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/Commander.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/CommanderVisitor.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/Sergeant.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/SergeantVisitor.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/Soldier.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/SoldierVisitor.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/Unit.class create mode 100644 visitor/target/classes/com/iluwatar/visitor/UnitVisitor.class diff --git a/visitor/src/main/java/Singleton.java b/visitor/src/main/java/Singleton.java new file mode 100644 index 000000000000..80efe731f4a2 --- /dev/null +++ b/visitor/src/main/java/Singleton.java @@ -0,0 +1,24 @@ +public class Singleton { + + // Variable estática que contiene la instancia única de la clase + private static Singleton instance; + + // Constructor privado para evitar la creación de múltiples instancias + private Singleton() { + // Constructor privado para prevenir la instanciación + } + + // Método público que retorna la única instancia de la clase + public static Singleton getInstance() { + // Verifica si la instancia es nula y la crea si es necesario + if (instance == null) { + instance = new Singleton(); + } + return instance; + } + + // Método de ejemplo que representa la funcionalidad de la clase Singleton + public void showMessage() { + System.out.println("¡Hola desde Singleton!"); + } +} diff --git a/visitor/src/test/java/com/iluwatar/visitor/SingletonTest.java b/visitor/src/test/java/com/iluwatar/visitor/SingletonTest.java new file mode 100644 index 000000000000..70c9391424ca --- /dev/null +++ b/visitor/src/test/java/com/iluwatar/visitor/SingletonTest.java @@ -0,0 +1,23 @@ +package com.iluwatar.visitor; + +import static org.junit.jupiter.api.Assertions.*; +import org.junit.jupiter.api.Test; + +public class SingletonTest { + + @Test + public void testSingletonInstance() { + // Obtiene dos instancias de Singleton + Singleton instance1 = Singleton.getInstance(); + Singleton instance2 = Singleton.getInstance(); + + // Verifica que ambas instancias sean iguales (Singleton garantiza una única instancia) + assertSame(instance1, instance2, "Las dos instancias deberían ser iguales"); + + // Verifica el comportamiento del método en Singleton + instance1.showMessage(); + } + + private void assertSame(Singleton instance1, Singleton instance2, String s) { + } +} diff --git a/visitor/target/classes/Singleton.class b/visitor/target/classes/Singleton.class new file mode 100644 index 0000000000000000000000000000000000000000..205f0c20e82473e4dd1dd6c9fb85917de4e7e2fb GIT binary patch literal 654 zcmZvZPjAye5XIldX&pOGnx;(yZGn`3N;r@M2M(cJkPwy9f@Bnl7X6Ns}AHM+Xfgc5PcITapR^mv?cU2E&YI`g}T78fP^A(ir`>~WO3R!R@llPk?WL8@7%e= zf8c^8BKQIP41Ne=HV$bI%LT18JG1j<-oDZN{Qd0*fTuXIP=H~gSVakCLhVdk2s;qb zz<$*`^SzW%ej+28J|h^-R@cNFq2a}$ErZc}k&48=kmoXu6T2OUp@{l^V!|SKu!JmCSkkzwxh)=w$oPE!aQmgOw>%=BJ63g zPTsehi?Of*LzS#nv4(XXg77?l$kRAz{+nxB%#`SvYVXmpH)(Jj6#l!Y4eQsI2EoaEK$uTw<4T4_GJRnBxNMKYkB{KB2k@bc zbJ_-7fOgT&O#b=ipL6>8_5K0i2=y#th-*mbNFqg8G2MY7?a`y~g=dWAQ2MTCTshJw zqz)y2j|tVrb$6z&)9lS5jf{q@jydRrt(n?h$R{L&NrdgjbnuBg7zn3tc}!Q1^EwJB zvL#`f)&qOnnbD}6M^m^pjS?Zlc0!njGGTM7yU9R8;>7J+ghE$3*7;~~V|kb2#^y?? z>zcyu2~Vm#Dkl6pIpm%H+k=oc@1))LEQhfE*Lf1O=pG35>Db>}GT3)7d`~*JgmRLgKX`M>7Mt-vEzLKJb1wLW*#POv53J?}KJLamYr&{e-&RXKv@$nP+$V^Vjzu0G{AM0U2Z+Ou3lG48!~>KjVJLRp1}C zPDR@=%2=83?y!RhwF^?+_iY~6=8g({W z$S@_n?6!nPF)ZxX;_v{W(KE5GHAkCcFsW z3wa#ZDu2)5;3k7NR*csq-avH5)GD^(gu2_(Z~eMZBH~7L zYBc1Y?g)mthE(EZuiFyQD^7)dDcd}3@<`e^O-`9Nl1N*PvAv9L4B@Byo5oNok1sja zVMo#~RhkS=oCFN3|6a_nJ_#qHKyYRHyj+|{3~LjBf0i?BOdt+s>Lc?scXIY-!m;i}ZLu${whMzr>DKMo6NVC<{tOsa=vlTmfc!1GM>FJC$xoA~YeaU9 zBA-07+3FXtkMt!2kF0$SLY2r`fGu0c26=|t*d%L|P+cgQi^E#XTbBurm;) cM6vzki@C2@_zcJ57(B9xFdjudMH$@x4R-PoZ2$lO literal 0 HcmV?d00001 diff --git a/visitor/target/classes/com/iluwatar/visitor/Sergeant.class b/visitor/target/classes/com/iluwatar/visitor/Sergeant.class new file mode 100644 index 0000000000000000000000000000000000000000..edc147753c95dfcf5b9e2593bf175fbfa5f85cf8 GIT binary patch literal 778 zcmaiy%}&Bl5QWd>uL!LmB8q|ti3vYy-J@(wOiYLyl#Q!PY2cdDno@A>8|ljE!Uyo7 zjB`s-7NA|UcP3}PIWxDPU+*6P&QVDqgs_5$iYQ_XdBYj$!kRpCkGuL*jD_d8`mHTI zhS-^)Z;PQ+y=$-3HEZ1@;#gCVP?3bnaIjL_o$(o>ekX=Xbvd|Wx&xEj9>JyIbrmV3 z$q_dU^MR}#uBem7gCT_NKj8S#c)uxqy7dZ1c}ssk?YhNs6#;mDvlPg p+7DJk0Yx9Xk5Yg=_G2=h*?1mG=v5&&6XmxjSl%@k6OE ze0bpp@Ix7Axf2M2m)y+F-p()onVtRh`^QfJk8n4S1d$iMDzIQ z=-CNFp{ae>3B0ohJ*TN%SNOFoE;3}F3(wQV4<8q>gi96*HZEhCwNK!vg|UMSO`wkMt_r9&P{tpd{$PxssUt#c%l@Odb@H7c^9yMke{ zDV2CR=(mOcic{jSfgSF(xGzl{FQ&pbl1RJFnOde!gXrnuK{1rdb27Bom2@+3AXJI00hqKcY?G%egdMUb`60atvo@Vr9VV_sKjTD`x{E!s22qX?Pmvt%vOmKr zT-g7P#U#cwbJu};RK@)XqCFzosGu4X_haH*QS}J~o&B&HBkC4zlg;8_)RYp%=E)VZ X-*Dv%ETf2_NH%Irks^np1n&F+o(T-j literal 0 HcmV?d00001 diff --git a/visitor/target/classes/com/iluwatar/visitor/Soldier.class b/visitor/target/classes/com/iluwatar/visitor/Soldier.class new file mode 100644 index 0000000000000000000000000000000000000000..c9ef1d2f9ee0a55f614467ba1b3d4296c85cf04d GIT binary patch literal 773 zcmaKq%}&Bl5QWe1SA-&nilQh&VuGO7J<7(!#Dus(*|@rv2Ck{CDMi=5k*M1^Z5nf4D}3Rh-*mbNFqfjo9=@l?a8z7g=aj;vGiTfxN)RU zNS#Xlb_mtRZFjD&ebCP$jU^2k9a-pvy}8FWMt}jrLEd&xTIV$6(*>`JQx!gtf*&_g*{+ z!xqla2(xWMrsqyP)4Gsq2tAtfSP4C2LewuGRd27K1|O{*lYv8fZd83px&`u(>~M m4i)SK*j-d3>`@T2@#4xW144hwKX4L2^xzziAbcSMRqYozAg`hT literal 0 HcmV?d00001 diff --git a/visitor/target/classes/com/iluwatar/visitor/SoldierVisitor.class b/visitor/target/classes/com/iluwatar/visitor/SoldierVisitor.class new file mode 100644 index 0000000000000000000000000000000000000000..5c4a39d816c22e74466e4e6501129f3973d4c344 GIT binary patch literal 1178 zcmaizU2hUW6o%j7Yk{JzR9kJeg;p%I+SRC6poyuLm=K#3<$i$aI=IXvyF-mJ{wVdr zj|+c*KgxK9#X?)CB+TIq=RA4moio4x{QL#r2_9q-L)<|kha^%A3q5|!U7st@J!tnt z$1tR7Qc3faAzrSuGDsuiAe+M+atxat-FKxwc+U+F++!I^qXW08{jL;2D@uvbIH=cO z95Un^I`G`kKYG-28`|?kP)*}9L#`eOVWjfH!pBc@Siltr`5YE;l@y(AVMs`Iq#3r# zjj`IM38=q1u@mX9R$5ssVcEg;9ByERVfid@pLa<02ZoF%OeBk;Gzs7Hc^FnJ=hZv7 z$xxVT!W%N}#DUerfiki$UMlNR+ZWH2(uNzURcLMTb-%6OxpkpLz>Vlu>5zN6D;VY* zQi)fCep>{uIW-PV>~O!u18MWoX2QIcL@G6=YB_x&1WyjHilJD(uz}2DaKh+18P+Z? zX4sg86M-kVGDBWE9AymaGl2ifX~1R>_jJF{RhI_HO3cuyqm*uAI&<8>kgj$7(M)HX zdJuHPzO>FRp7v?iP8W(a@i8#0(s#v9J;ht}c2X4AC?+Y=)1h^pGM6H=yW8KuKGTmF z3bfk4L8v0F7GT>put|~OHcGVG=I4l0Jym>xlfSg{1M_i=8TO?D6_T($RXCu7|`p6S#yNN zFtuCm8mP$_!mxytg3A~=Wzg~rQ{8YJe(Vwh*K-7KFf8VF%YPHp@}Vop2m{saAYL1x z60ay2#Ta35T^CKFwUO)2r4kl!26C@u>7HR*YRR_TRzo=2Ag*FU!Zihxm|_?Y7@fbK zLE5vOXI!r{%;q{so=41AWYTror#i!sy$Hh!!wjj>UDiBB#7lNfFbtOsOT2D1s>0df zRg*j;Wn1TFg*%3CN6xrcH%RTt9-vfH^vDeJ-Q!Mmq^nKdsMdHUR6n!CuzrE+x+80T zS^Yt0G059?%hAP_;g^*3yKd2c3+kaw+xDmzc=MI;>UPZ?PC%8hggX-MD!7OHM8Dlg zhIM2g3bhfS_B%ai z5_gW9;{OiAD|_cgqtVH?#7%SC@PwAaLx$1Lio$^>g-NZ)enUP{kV8HNjbXaSs|9bO zys#|cluYir!j(YlB708Ye`zIQozQ!S()5PH#^;DtjHa48*k3^OuMh8ObIp=xj;t*@ z_0Q$P7qCL{6QmDh#V}95Llg^S5JwhC+{6vC#=>awX33(w0F@CMO=5)kGQvz3K0^A6 zOT`nUfo~X(p$+b@QQ$VwTIc{y{{c?Zg}1;`vae_ayc_{1iiOX(-o{GMxsTN*m=hbPQre^zd^ZOlz=tvxWN?t>-kY2+ zC*OU&A5Q>#Oe1&%^GsJ%$okGKGqe#mVYQ(bC2ab=Ba8@UC2JU!OcnHeEqP`Mf{rCv ztWSR{5-oGV&2EztEQc6w3eJ@6pw$3$&{f4$-dDwmu1&^|LUO0|