2013-10-07 3 views
0

내가 추상 클래스 Menu과 세 개의 서브 클래스 MexicanMenu, FinnishMenu, JapaneseMenu을 가지고 있다고 가정 해 보겠습니다.정적 ArrayList는 얼마나 비쌉니까?

각 종류의 메뉴마다 정적 인 ArrayList<String> menu 또는 비 정적 인 것이 더 비쌉니까?

"인스턴스"방법 사용에 대해 정적 메뉴를 사용하는 것이 장단점은 무엇입니까? OO 디자인 말하기 나는 둘 다 똑같이 목적에 부합한다고 생각합니다.

+1

는'static'이 OO 없습니다. – zapl

+0

피드백을 보내 주셔서 감사합니다. @zapl 그러나 클래스가 없으면 가능한 객체가 보이지 않습니다 .. –

+0

'static '은 각 클래스에 하나만 있기 때문에 (클래스 유형의 객체가 두 개 이상있는 경우) 메모리를 적게 사용합니다. – Dukeling

답변

2

메소드 오버라이드의 기본적인 필요가 메뉴 정적

종류별 갖는 더 비싸다. 그리고 왜 당신이 가고 있는지 잘 모르겠습니다. static

스레드 안전성에 대해 걱정하지 않는 한 부작용이 있거나 값 비싼 메모리 누수가 없습니다.

instances에 바인딩하는 것이 좋습니다.

+0

예, 당신이 무시 무시한 것은 나쁜 예입니다. 나는 값 비싼 사람이 정적 arraylist로 여겨지는 것을 알고 싶었습니다. –

+0

@IndeedItIs 비용에 대해서는 잊어 버렸습니다. 이것은 메모리와 관련해서는 거의 무시할 만합니다. 디자인이 요구된다면 그냥 가십시오. –

0

비 정적 목록을 추상 클래스로 선언하고 모든 하위 클래스에 상속 할 수 있습니다. 각 하위 클래스에 대해 개별 복사본을 원할 경우 정적 목록을 사용하십시오. 그렇지 않으면 정적 목록을 사용하십시오.

0

자바는 오픈 소스와 무료입니다 그래서 모든 비용이 : P는 외부 개체의 살고 있기 때문에

관련 문제