다른 언어로 객체 데이터를 표시 할 수있는 MultiLingual 인터페이스를 만들어야합니다 (데이터 자체는 아니지만 "작성자", "제목"등의 소개).자바 인터페이스 사용
인쇄 된 데이터는 다음과 같습니다
public class Main {
public static void main(String[] args){
MultiLingual gatecrasher[]={ new Data(3,12,1998),
new Data(10,6,1924,MultiLingual.ENG),
new Book("LoTR", "Tolkien", "Amazon", 2010),
new Book("Tuesdays with Morrie",
"Mitch Albom", "Time Warner Books",2003,
MultiLingual.ENG),
new Money(1232895/33.0,MultiLingual.PL),
new Money(134566/23.0,MultiLingual.ENG),
};
for(int i=0;i < gatecrasher.length;i++)
System.out.println(gatecrasher[i]+"\n");
for(int i=0;i < gatecrasher.length;i++)
System.out.println(gatecrasher[i].get(MultiLingual.ENG)+"\n");
}
}
그래서 내가 다국어 인터페이스의 상수 ENG, PL뿐만 아니라 방법 GET를 소개합니다 (INT :
3 grudnia 1998
10th of June 1924
Autor: Tolkien
Tytul: LoTR
Wydawnictwo: Amazon 2010
Author: Mitch Albom
Title: Tuesdays with Morrie
Publishing House: Time Warner Books 2003
37 360,45 PLN
5,850.70 GBP
3rd of December 1998
10th of June 1924
Author: Tolkien
Title: LoTR
Publishing House: Amazon 2010
Author: Mitch Albom
Title: Tuesdays with Morrie
Publishing House: Time Warner Books 2003
37,360.45 GBP
5,850.70 GBP
테스트 코드는 다음과 같습니다 언어) :
public interface MultiLingual {
int ENG = 0;
int PL= 1;
String get(int lang);
}
그리고 나서 책을 가지고 있습니다. 문제는 생성자로 시작됩니다. 그 중 하나는 MultiLingual.ENG를 인수로 받아 들일 필요가 있지만이를 달성하는 방법은 무엇입니까? 이것은 적절한 방법입니까? :
class Book implements MultiLingual {
private String title;
private String publisher;
private String author;
public Book(String t, String a, String p, int y, MultiLingual lang){
}
이 MultiLingual.ENG를 int 변수로 처리해야합니까? 아니면 인터페이스에서 자동으로 상수가 변경됩니까?
는 인수로 MultLingual을지지 않습니다 책,하지만 다음과 같은 구현을위한두 번째 생성자는 어떻게 든 잘못 :
public Book(String t, String a, String p, int y){
Book someBook = new Book(t, a, p, y, MultiLingual m);
}
난 그냥 다국어 m 대신 INT의 m를 보낼 수 있지만, 나는 언어의 경우 통제가 없습니다
PL 또는 ENG로 설정됩니다.
그리고 마지막으로 (수) Boook위한 방법은하지만 적어도이 잘 작동해야한다고 생각 :
public String get(int lang){
String data;
if (lang == ENG){
data = "Author: "+this.author+"\n"+
"Title: "+this.title+"\n"+
"Publisher: "+this.publisher+"\n";
}
else {
data = "Autor: "+this.author+"\n"+
"Tytul: "+this.title+"\n"+
"Wydawca: "+this.publisher+"\n";
}
return data;
}
@Override
public String toString(){
return "";
}
}
덕분에 이제는 –