2015-01-25 4 views
0

내에서 다른 클래스의 값을 취득합니다? 그렇지 않은 경우 someRassCount (0)를 someClass 클래스 내부의 다른 메서드에 넣지 않으면 테이블이 비어 있기 때문에 defaultTableModel.setRowCount (0)를 사용하여 문제가 발생하기 때문에이 대안에 대한 대안이 필요합니다.나는 두 개의 클래스가 이벤트

+0

두 번째 클래스는 확실히 좋지 않습니다. 어떻게이 함수를 클래스 정의 외부와 같은 파일에 넣고 있습니까? – ha9u63ar

+0

클래스 내부에 .. 'public someClass()'가 생성자입니다 – meatno

답변

0

기본 Java 액세스 지정자 .....이 개인 메서드는 어떻게 호출합니까 getRandomStringrandomMethod()? 클래스의 private 메소드의 가시성은 다른 클래스가 아닌 클래스 일뿐입니다. 따라서 다음 코드가 표시됩니다.

private void randomMethod(String selectedItem){ 
    someClass sc = new someClass(); 
    String randomString = selectedItem; 
    fs.getRandomString(randomString); // This will not work 

} 

은 액세스 지정자 private 때문에 작동하지 않습니다. 그냥 무슨 뜻인지 보여

protected void getRandromString(String randromString) {...} 

:

package com.stackoverflow.solutionmaker; 

public class Aclass { 

    public Aclass(){ 
     somePrivMethod(); 
    } 

    public void aMethod(){ 
     System.out.println("Can see me from anywehre bcoz I am public"); 
    } 

    private void somePrivMethod(){ 
     System.out.println("Cannot find me from anywhere because I am private t Aclass"); 
    } 

} 

이제 러너 클래스 :

당신이 액세스 권한은 당신이 가지고있는 패키지에 구체적으로 허용 할 수 있다면, 당신은 그것을 변경할 수 있습니다
package com.stackoverflow.solutionmaker; 

public class StackOverflowSolutionsRunner { 

    public static void main(String[] args) { 

     Aclass aClass = new Aclass(); // It will display"Cannot find me from anywhere because I am private t Aclass" 

     aClass.aMethod(); // It will display "Can see me from anywehre bcoz I am public 

     aClass.somePrivMethod(); // Will throw a compile-time error 


    } 
} 

이제는 명령 줄에서이 두 가지를 컴파일하고 얻은 오류 메시지를 확인하십시오. 또는 Eclipse 스마트 IDE 또는 Jcreator를 사용하여 개인 액세스 지정자가 빨간색 메시지를 표시하고 있음을 알 수 있습니다.

+0

@ meatno 약식을 사용할 수 없으며 의미를 명확히 할 수 있습니까? – ha9u63ar

+0

나는 이클립스를 지금 사용하고있다. 그리고 나는 정말로 어떤 에러 메시지도받지 않는다 : | 왜 그런지 몰라. – meatno

+0

nvm 공개적으로 정말 정말 슬프다. – meatno