From c9e96af0a57daa3c1fe399875463319270c199f9 Mon Sep 17 00:00:00 2001 From: Kilokem Date: Fri, 4 Oct 2024 20:44:18 +0200 Subject: [PATCH] CastOverrideAndAnonymusClasses --- castingandothers/pom.xml | 16 +++++++ .../src/main/java/com/example/Animal.java | 8 ++++ .../src/main/java/com/example/Cat.java | 12 +++++ .../src/main/java/com/example/Main.java | 41 ++++++++++++++++++ .../target/classes/com/example/Animal.class | Bin 0 -> 407 bytes .../target/classes/com/example/Cat.class | Bin 0 -> 715 bytes .../target/classes/com/example/Main$1.class | Bin 0 -> 634 bytes .../target/classes/com/example/Main.class | Bin 0 -> 1326 bytes 8 files changed, 77 insertions(+) create mode 100644 castingandothers/pom.xml create mode 100644 castingandothers/src/main/java/com/example/Animal.java create mode 100644 castingandothers/src/main/java/com/example/Cat.java create mode 100644 castingandothers/src/main/java/com/example/Main.java create mode 100644 castingandothers/target/classes/com/example/Animal.class create mode 100644 castingandothers/target/classes/com/example/Cat.class create mode 100644 castingandothers/target/classes/com/example/Main$1.class create mode 100644 castingandothers/target/classes/com/example/Main.class diff --git a/castingandothers/pom.xml b/castingandothers/pom.xml new file mode 100644 index 0000000..074fc54 --- /dev/null +++ b/castingandothers/pom.xml @@ -0,0 +1,16 @@ + + + 4.0.0 + + com.example + castingandothers + 1.0-SNAPSHOT + + + 17 + 17 + + + \ No newline at end of file diff --git a/castingandothers/src/main/java/com/example/Animal.java b/castingandothers/src/main/java/com/example/Animal.java new file mode 100644 index 0000000..3b75755 --- /dev/null +++ b/castingandothers/src/main/java/com/example/Animal.java @@ -0,0 +1,8 @@ +package com.example; + +class Animal{ + public String name; + public void Animal(){ + this.name = "Something!!!"; + } +} \ No newline at end of file diff --git a/castingandothers/src/main/java/com/example/Cat.java b/castingandothers/src/main/java/com/example/Cat.java new file mode 100644 index 0000000..1e0fc07 --- /dev/null +++ b/castingandothers/src/main/java/com/example/Cat.java @@ -0,0 +1,12 @@ +package com.example; + +public class Cat extends Animal { + public String sound; + public void Cat(){ + this.sound = "MEEEEOW"; + } + public void makesound(){ + this.sound = "Something like MEEEEOW"; + System.err.println(sound); + } +} diff --git a/castingandothers/src/main/java/com/example/Main.java b/castingandothers/src/main/java/com/example/Main.java new file mode 100644 index 0000000..6c5fbe2 --- /dev/null +++ b/castingandothers/src/main/java/com/example/Main.java @@ -0,0 +1,41 @@ +package com.example; + +import java.util.Scanner; + +public class Main { + public static void main(String[] args) { + System.out.println("Hello world!"); + + double asd = 3.5423; + int castedasd = (int) asd; + System.out.println(castedasd); + System.out.print("Gimme a letter and Ill tel you the ASCII code! "); + Scanner read = new Scanner(System.in); + char a = read.next().charAt(0); + + //your code goes here + System.out.println((int)a); + + + // Upcasting + // You can cast an instance of a subclass to its superclass. + + // Consider the following example, assuming that Cat is a subclass of Animal. + Animal C = new Cat(); + + Animal B = new Cat(); + System.out.println(((Cat)B).sound); + + // Anonymous Classes + // Anonymous classes are a way to extend the existing classes on the fly. + + // For example, consider having a class Machine: + Cat c = new Cat(){ + @Override public void makesound(){ + System.err.println("MOOOOOOOOOOOOOO"); + } + }; + + c.makesound(); + } +} \ No newline at end of file diff --git a/castingandothers/target/classes/com/example/Animal.class b/castingandothers/target/classes/com/example/Animal.class new file mode 100644 index 0000000000000000000000000000000000000000..830297ce253b1d06aadcd67a2f91da7bdfaa0f8b GIT binary patch literal 407 zcmZWlyH3L}6g|$%Z5k+q*Ge|%Kqe+05<+5%U9&% z>FJCPK`C?Sl0B-2l%@Ry@F(vGU;A-HF`zbxxIr=Mb03=+Q$@eDBA=32hvSoY`wcs5 Udf0CXNQVEB;46teB01Rq0nNil*#H0l literal 0 HcmV?d00001 diff --git a/castingandothers/target/classes/com/example/Cat.class b/castingandothers/target/classes/com/example/Cat.class new file mode 100644 index 0000000000000000000000000000000000000000..ce4c4cba6707b11f30175a57973e9619fcfa0708 GIT binary patch literal 715 zcmZWm%We}v5UloN*WPR%wn;)D4~JlId|*$U0+AvsoD4*Al$iYrRJBSs)$~ z2R?w0Le#7y+bFwI&rJ7pbydxuzrTJ1c#T6B1;Oedi30seMWav$U6r{g3F?c`ccVV4AXM=%=x3>kherbEm5EJuEGV`QF9fA-a;-fSvE;)=g=2aq*6$|K zl}^vqRj4gYGEm`#N{v0=B}>@{GZxf(iv-Au6N+3as0-Y;r~KYuRv~!cqYOt-jnu8q z`Bktf*ytybCR99ZhUQi`XB}I3?BbDNZ9&54ai$|5+t}d{ou-2IsX~(kXOx#wq*l?9 zhdu1OXbKv6_y1)dPjEnTBij+i1Zm&*$y(z~{j}yh^YPT0gAV zTA{=wXU?44_nmX*{p0lwz%JHYWEgUF9f#tc$G4FPD_pAlmJ5erpwnOChM{LiDrxo@ zx(e$x2B)MO!bcap0Nv=Jin3JVxEWuFf0j4p-;NDu8ND*?O4c%rouwWA6#gc$z4m4y_mB%gn>J1Cl(OYsY!XOJL)_*97+eCX)X92C7WNXY*9BgJ zci<5~$Vfy&{N_1$2mV$4#tBLcth94x&Y5%0ch33dvg0+h?d!ZH#tfKWU?l%=^)P=miM?>URH)_9k3jl>ubBmq{{gn(#S)35CR+R5Y_R}c#>r*DiFkxU^V6dI7 z)4{??ObQsgI)+bF!};%l%3QZt&!eWD>?nJ&TCP-Vm+hRgb(9$kvpRLUo!US_puY{UnRvcab!8Z;SU2Nm z3#ajmK$mXXVbzszxA~=N6L~m#K)(u%9u&Yjk6tO%^rdqa&f@~1hw2%7IFv7ZTdj#p z_|3rO&H=Q?W8n&lfINE9wQ%L^AGStD^#n20+ugy#RU5=^4%wlOXt5Gv{)v~8wL{8&Bqw6FWD|(J) zUp5+wczf1WBUw}W`7|&ELgga`y13)>;%e~ZPzuWQ+*@Q{waq41ZKe`ET&;t>g=0MB za2&nV&{_29$4Z_58hryJEsPG~)XMCO1s*3`u(kHb7Jk}8e)Bb$;7lHkH>cI$i zr-*Zowu>b6JVvpMacp1$f3pdX_z<3uoVu<%^dxqyph9WkAN+woSy?Y{u40X~&5;%B z^i46=W!%DTc4Qedly}&n4NRiSox!LX+{Hb{>qd>Sy6_k7Q<{vnM5(_`{waO_A2abE Ar~m)} literal 0 HcmV?d00001