Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions _1_basics/src/main/java/code/_3_in_class/Ex1.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package code._3_in_class;

public class Ex1 {
public static void main(String[] args) {
System.out.println("salut lume1");
}
}
7 changes: 7 additions & 0 deletions _1_basics/src/main/java/code/_3_in_class/Ex2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package code._3_in_class;

public class Ex2 {
public static void main(String[] args) {
System.out.println("salut lume2");
}
}
24 changes: 24 additions & 0 deletions _2_oo/src/main/java/code/_3_in_class/Boxer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package code._3_in_class;

public class Boxer {
String nume;
int health = 100;
int dammagePerAttack =10;

//constructor
public Boxer(String nume, int health, int dammagePerAttack) {
this.nume = nume;
this.health = health;
this.dammagePerAttack = dammagePerAttack;
}

public Boxer(String nume) {
this.nume = nume;
}

void attack(Boxer opponent) {
opponent.health = opponent.health - this.dammagePerAttack;
System.out.println(this.nume + "il ataca pe" + opponent.nume +"-new health is =" + opponent.health);
}
void defend(){}
}
13 changes: 13 additions & 0 deletions _2_oo/src/main/java/code/_3_in_class/JohnCena.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package code._3_in_class;

public class JohnCena extends Boxer {
public BruceLee (String nume, int health, int dammagePerAttack) {
this.nume = nume;
this.health = health;
this.dammagePerAttack = dammagePerAttack;
}

public JohnCena (String nume) {
this.nume = nume;
}
}
37 changes: 37 additions & 0 deletions _2_oo/src/main/java/code/_3_in_class/MainBoxer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
package code._3_in_class;
import java.util.Random;

public class MainBoxer {

public static void main(String[] args) {
//TODO put your code changes in here
Boxer ion = new Boxer("ion", 100, 10);
Boxer vasile = new Boxer("vasile");


startBoxingMatch(ion, vasile);
endingResults(ion);
}

private static void endingResults(Boxer ion) {
if (ion.health <= 0) {
System.out.println("Vasile a castigat meciul");
} else {
System.out.println("Ion a castigat meciul");
}
}



private static void startBoxingMatch(Boxer ion, Boxer vasile) {
Random random = new Random();
while(ion.health >0 && vasile.health >0) {
int zeroOrOne = random.nextInt(2);
if(zeroOrOne ==0) {
ion.attack(vasile);
} else {
vasile.attack(ion);
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package clean.code.design_patterns.requirements.builder;
public class Main {
public static void main(String[] args) {
// Crearea unui obiect Salata utilizând SalataBuilder
Salata salata = new SalataBuilder()
.salata("Mix de salată verde")
.sos("Iaurt")
.branza(true)
.crutoane(true)
.build();

// Accesarea atributelor obiectului Salata
System.out.println("Salată: " + salata.getSalata());
System.out.println("Sos: " + salata.getSos());
System.out.println("Branză: " + salata.areBranza());
System.out.println("Crutoane: " + salata.areCrutoane());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package clean.code.design_patterns.requirements.builder;
//builder
public class Salata {
private String salata; // baza
private String sos; // sos
private boolean branza; // indicator pentru prezența brânzei
private boolean crutoane; // indicator pentru prezența crutoanelor

Salata(String salata, String sos, boolean branza, boolean crutoane) {
this.salata = salata;
this.sos = sos;
this.branza = branza;
this.crutoane = crutoane;
}

public String getSalata() {
return salata;
}

public String getSos() {
return sos;
}

public boolean areBranza() {
return branza;
}

public boolean areCrutoane() {
return crutoane;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package clean.code.design_patterns.requirements.builder;
public class SalataBuilder {
private String salata;
private String sos;
private boolean branza;
private boolean crutoane;

public SalataBuilder salata(String salata) {
this.salata = salata;
return this;
}

public SalataBuilder sos(String sos) {
this.sos = sos;
return this;
}

public SalataBuilder branza(boolean branza) {
this.branza = branza;
return this;
}

public SalataBuilder crutoane(boolean crutoane) {
this.crutoane = crutoane;
return this;
}

public Salata build() {
return new Salata(salata, sos, branza, crutoane);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package clean.code.design_patterns.requirements.prototype;
public class AfisPublicitar {
private String text;
private Logo logo;

public AfisPublicitar(String text, Logo logo) {
this.text = text;
this.logo = logo;
}

public void setText(String text) {
this.text = text;
}

public String getText() {
return text;
}

public Logo getLogo() {
return logo;
}

public void setLogo(Logo logo) {
this.logo = logo;
}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package clean.code.design_patterns.requirements.prototype;

// Clasa Logo, care va fi clonată
public class Logo implements Cloneable {
private String imagine;

public Logo(String imagine) {
this.imagine = imagine;
}

public void setImagine(String imagine) {
this.imagine = imagine;
}

public String getImagine() {
return imagine;
}

@Override
public Logo clone() throws CloneNotSupportedException {
return (Logo) super.clone();
}
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package clean.code.design_patterns.requirements.prototype;

public class Main {
public static void main(String[] args) {
// Initializarea unui obiect AfisPublicitar.java
Logo logo = new Logo("logo_original");
AfisPublicitar afisOriginal = new AfisPublicitar("Acesta este un afiș publicitar", logo);

try {
// Clonarea obiectului de tip Logo
Logo logoClonat = afisOriginal.getLogo().clone();
logoClonat.setImagine("logo_clonat");

// Crearea unui nou afis publicitar cu logo-ul clonat
AfisPublicitar afisClonat = new AfisPublicitar("Acesta este un afiș publicitar clonat", logoClonat);

// Afisarea informatiilor despre afisul original si cel clonat
System.out.println("Afiș publicitar original:");
System.out.println("Text: " + afisOriginal.getText());
System.out.println("Logo: " + afisOriginal.getLogo().getImagine());

System.out.println("\nAfiș publicitar clonat:");
System.out.println("Text: " + afisClonat.getText());
System.out.println("Logo: " + afisClonat.getLogo().getImagine());
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
}
}