public class StringToString
{
public static void main (String[] args)
{
Friend fnd1 = new Friend("이종수");
Friend fnd2 = new Friend("현주은");
System.out.println(fnd1);
System.out.println(fnd2);
}
}
{
String myName;
public Friend(String name)
{
myName = name;
}
public String toString()
return "제 이름은 "+myName+"입니다.";
}
저기서 Friend fnd1 = new Friend(); 여기서 Friend가
클래스를 가리킬 때는 언제고 클래스내의 메소드를 가리킬때는언제죠?
저건 메소드를가리키는거같은데
앞에 Friend가 클래스, 뒤에 Friend가 생성자 (니가말하는 메소드)
오호
님그러면 string()이라는 함수를 어디서도 호출하지않았는데Friend 클래스 내의 string이 어떻게 발생되어 문자가 출력되는거죠?
아니 toString()이요 ㅠㅠ
주은이가 니 여친이니
아니욬ㅋㅋ 예제에있던이름
메소드는 함수처럼 따로 호출하지않아도 그냥 순차적으로 발생하는건가..
저건 걍 toString 메소드의 특성임
그리고 저대로하면 실행안되지않음? toString도 메소드라서 블록안에 써줘야할탠데
ㅈㅅ실행은아직안해봄 아 메소드는 괄호생략이안되는구뇨
toSring 메소드의 특성이란게 호출하지않아도 발생하는건가욤
위에서 호출했자나 fnd1
클래스를 호출한거지 메소드를 호출한건 아니자나요 ㅠㅠ ㅈㅅ 메소드가 함수같은개념 아닌가욤
System.out.println 메소드 안의 인자가 String 형태의 객체가 아닌 경우 그 객체의 toString() 메소드를 호출해서 객체를 String형태로 변환시킨 후 출력함
니가 호출하고자 한 fnd1은 String 형태의 변수가 아니니까 fnd1에 해당하는 toString메소드를 호출한거고
예를들어 int a=100; System.out.println("a : "+a); 라는 코드가 있다고 치자. 여기서 +로 연결된 a라는 건 String 형태의 객체가 아니기 때문에 String으로의 변환이 필요한데 int a=100; 이라는 선언 자체에 a 변수의 toString메소드는 "100"이라고 정해지는거라고 생각하면 쉬움
아하감사합니다 ㅎㅎㅎ
병신새끼야 알려줄려면 제대로 알려줘 ㅋㅋㅋㅋㅋㅋㅋㅋ시발 읽다보니 기가차네 a병수의 toStirng메소드? ㅋㅋㅋ
숫자 + 문자열 -> 문자열이겠지
니말대로라면 int a = 100, b = 1; sysout.print(a+b)하면 1001 나올기새네 ㅋㅋㅋㅋㅋ
이게머 대충 그 클래스안에있는 string을 리턴해주는거같은데맞나