2023. 2. 1. 13:46γjava
λͺ¨λ ν΄λμ€λ Object ν΄λμ€λ₯Ό μμνκ³ μλ€. (ν΄λμ€μ μμ‘°)
public class Object1 {
public void aaa(){
System.out.println("λ©μλ μ€ν");
}
}
μλμ²λΌ
public class Object1 extends Object{
public void aaa(){
System.out.println("λ©μλ μ€ν");
}
}
λ°λΌμ μλ κ°μ μ½λλ κ°λ₯. > λͺ¨λ ν΄λμ€μ κ°μ²΄λ₯Ό λ§λ€κΈ° κ°λ₯
Object a2 = new Cake(); μΌμ΄ν¬μ λ©μλλ μ¬μ©ν μ μμ.
Object a1 = new Dog();
λͺ¨λ ν΄λμ€λ Object λΆλͺ¨ ν΄λμ€ λλΆμ μΈ μ μλ λ©μλκ° 4κ° μλ€.
κ·Έ μ€ λ§μ΄ μ°λ 2κ°λ₯Ό μμ보μ.
>> toString();
κ°μ²΄μ μ 보λ₯Ό λ¬Έμμ΄λ‘ νννλ κΈ°λ₯
ν΄λμ€μμ λ§λ€μμΌλκΉ κ·Έ ν΄λμ€μ μ 보λ₯Ό μΆλ ₯νλ λ©μλλ‘ toString() λ©μλλ₯Ό
μ€λ²λΌμ΄λ©ν΄μ μ 보λ₯Ό λ¬Έμμ΄λ‘ μνλλλ‘ νν κ°λ₯.
ννμ μλ―Έ : κ°μ²΄κ° κ°μ§κ³ μλ λ³μλ€μ κ°μ λ¬Έμμ΄λ‘ λ§λ€μ΄ 리ν΄.
toString μ€λ²λΌμ΄λ© νλ λ²:
λ§μ°μ€ μ€λ₯Έμͺ½ - μμ± - λ©μλμ¬μ μ
//λͺ¨λ ν΄λμ€λ Object ν΄λμ€λ₯Ό μμνκ³ μλ€.
public class Object1{
private String name;
private int age;
public void aaa(){
System.out.println("λ©μλ μ€ν");
}
@Override //λ§€κ°λ³μ, 리ν΄νμ
λ°κΎΈλ©΄ μ λ¨.
public String toString() {
return "μ΄λ¦ : " + name + ", λμ΄ : " + age;
}
}
toString μ μ©
public class ToStringTest {
private String name;
private int age;
private String addr;
private String tell;
private String email;
public void showInfo(){
System.out.println("μ΄λ¦ : " + name);
System.out.println("λμ΄ : " + age);
System.out.println("μ£Όμ : " + addr);
System.out.println("μ°λ½μ² : " + tell);
System.out.println("μ΄λ©μΌ : " + email);
}
@Override
public String toString() {
return "ToStringTest{" +
"name='" + name + '\'' +
", age=" + age +
", addr='" + addr + '\'' +
", tell='" + tell + '\'' +
", email='" + email + '\'' +
'}';
}
}
-
public class ObjectTest2 {
public static void main(String[] args) {
ToStringTest t1 = new ToStringTest();
String result1 = t1.toString();
System.out.println(result1);
}
}
public class ObjectTest2 {
public static void main(String[] args) {
ToStringTest t1 = new ToStringTest();
String result1 = t1.toString();
System.out.println(result1);
//μ μ½λμ λμΌ
System.out.println(t1.toString());
//κ°μ²΄λͺ
μ μΆλ ₯νλ©΄ μλμΌλ‘ κ°μ²΄λͺ
λ€μ .toString()μ΄ λΆμ΄μ μ€ν.
System.out.println(t1); //κ°μ²΄λ₯Ό μΆλ ₯
}
}
>> equals();
μ§κΈκΉμ§ μ°λ¦¬κ° μΌλ λ¬Έμμ΄ λΉκ΅ equalsλ μλμ κ°λ€.
String name = "java";
name.equals("c++");
String ν΄λμ€μ equals () λ©μλλ String ν΄λμ€κ° λ³λλ‘ λ§λ λ©μλκ° μλλ€.
Object ν΄λμ€μμ μ μΈλ equals() λ©μλλ₯Ό μ€λ²λΌμ΄λ©νμ¬ λ¬Έμμ΄μ λΉκ΅ν μ μλλ‘
κΈ°λ₯μ μ¬μ μν κ²μ΄λ€.
eqauls()λ κ°μ²΄μ λ§€κ°λ³μλ‘ λ€μ΄μ¨ λ°μ΄ν°κ° κ°μμ§ λΉκ΅νμ¬ μ°Έ, κ±°μ§κ°μΌλ‘ 리ν΄ν΄μ£Όλ κΈ°λ₯.
λΉκ΅μ κΈ°μ€μ ν΄λμ€λ§λ€ λ€λ₯΄κΈ° λλ¬Έμ
κ°λ°μκ° equals() λ©μλλ₯Ό μ€λ²λΌμ΄λ©ν΄μ λΉκ΅μ κΈ°μ€μ μ½λλ‘ κ΅¬νν΄μΌ ν¨. >> λΉκ΅ κΈ°μ€ μμ μ μμ.
eqauls() μ€λ²λΌμ΄λ© νλ λ²:
λ§μ°μ€ μ€λ₯Έμͺ½ - μμ± - λ©μλ μ¬μ μ
public class Equals1 {
String name;
int age;
@Override
public boolean equals(Object obj) { //리ν΄νμ
μ booleanμΌλ‘ μ€μΌ νλ€.
return
}
}
equals μμ λ§€κ°λ³μ ν΄μ μ£Όμ! >> 무μμ΄λ λ§€κ°λ³μλ‘ μΈ μ μμ.
@Override //λ§€κ°λ³μλ‘ obj νμ
μ΄ λ€μ΄μ€λ κ²μ΄ μλλΌ μλμ²λΌ ν΄μ.
public boolean equals(Object obj) { //()μμ ν΄μ : λ§€κ°λ³μλ‘ λ¬΄μμ΄λ μ λ¬ν μ μλ€.
return
}
-
Equals1 e = (Equals1)o; // > ν λ³νν΄μΌ ν¨.
equalsλ₯Ό λ¨Όμ Object νμ μΌλ‘ λ§€κ°λ³μλ₯Ό λ°λλ€. λ€μ΄μ¨ λ§€κ°λ³μλ Object νμ μ΄κΈ° λλ¬Έμ
Equals1 ν΄λμ€ λ΄μ νλλ₯Ό μ¬μ©ν μ μλ€. κ·Έλμ Equals1λ‘ νλ³ν (downcasting) μ ν΄μ€μΌ νλ€.
public class Equals1 {
String name;
int age;
public Equals1(String name, int age){
this.name = name;
this.age = age;
}
//μ΄λ¦κ³Ό λμ΄κ° κ°μ κ°μ²΄λ©΄ λμΌν κ°μ²΄λ‘.(κ°λ°μκ° λ§μλλ‘ μ€μ )
@Override //λ§€κ°λ³μλ‘ object νμ
μ΄ λ€μ΄μ€λ κ²μ΄ μλλΌ μλμ²λΌ ν΄μ.
public boolean equals(Object obj) { //()μμ ν΄μ : λ§€κ°λ³μλ‘ λ¬΄μμ΄λ μ λ¬ν μ μλ€.
//μμμ μν΄ κ°λ₯, but Equals1(μμν΄λμ€) μμ λ³μ,λ©μλ μλμ§ λͺ¨λ¦
Equals1 e = (Equals1)obj; // > ν λ³νν΄μΌ ν¨.
if(name.equals(e.name) && age == e.age){
return true;
}
else {
return false;
}
}
}
-
public class EqualsTest1 {
public static void main(String[] args) {
Equals1 e1 = new Equals1("νκΈΈλ",20);
Equals1 e2 = new Equals1("νκΈΈλ",25);
boolean result = e1.equals(e2);
System.out.println(result);
}
}
μ΄ ν΄λμ€μμ toString λ€μ μ°μ΅ν΄λ³΄μλ©΄
@Override
public String toString() {
return "Equals1{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
toString λ©μλ μΆκ°
System.out.println(e1); //κ°μ²΄λͺ
λ€μ toString μλ΅ λμ΄ μμ.
System.out.println(e2);
μΆλ ₯κ²°κ³Ό
'java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
String ν΄λμ€ (0) | 2023.02.02 |
---|---|
@ : anotation (0) | 2023.02.01 |
μΈλ§₯κ΄λ¦¬νλ‘κ·Έλ¨ (μμ,λ€νμ±,μ€λ²λΌμ΄λ©) (0) | 2023.02.01 |
μμ2(μ¬ν) (0) | 2023.02.01 |
μμ (0) | 2023.01.31 |