質問編集履歴
3
初心者マークの追加
    
        title	
    CHANGED
    
    | 
         
            File without changes
         
     | 
    
        body	
    CHANGED
    
    | 
         
            File without changes
         
     | 
2
ソースコードの訂正
    
        title	
    CHANGED
    
    | 
         
            File without changes
         
     | 
    
        body	
    CHANGED
    
    | 
         @@ -12,12 +12,15 @@ 
     | 
|
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
14 
     | 
    
         
             
            ###該当のソースコード
         
     | 
| 
      
 15 
     | 
    
         
            +
            public class Main {
         
     | 
| 
      
 16 
     | 
    
         
            +
            	
         
     | 
| 
      
 17 
     | 
    
         
            +
            		public static void main(String[] args){
         
     | 
| 
      
 18 
     | 
    
         
            +
            			Sample s = new Sample();
         
     | 
| 
      
 19 
     | 
    
         
            +
            			s.test();	//staticなmainメソッドから非staticなtestメソッドを呼び出しているのでは?
         
     | 
| 
      
 20 
     | 
    
         
            +
            		}
         
     | 
| 
      
 21 
     | 
    
         
            +
            }
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
       15 
23 
     | 
    
         
             
            public class Sample {
         
     | 
| 
       16 
     | 
    
         
            -
            	public static void main(String[] args){
         
     | 
| 
       17 
     | 
    
         
            -
            		Sample s = new Sample();
         
     | 
| 
       18 
     | 
    
         
            -
            		s.test();	        
         
     | 
| 
       19 
     | 
    
         
            -
            	}
         
     | 
| 
       20 
     | 
    
         
            -
            	
         
     | 
| 
       21 
24 
     | 
    
         
             
            	void test(){
         
     | 
| 
       22 
25 
     | 
    
         
             
            		System.out.println("A");
         
     | 
| 
       23 
26 
     | 
    
         
             
            	}
         
     | 
1
文の訂正
    
        title	
    CHANGED
    
    | 
         
            File without changes
         
     | 
    
        body	
    CHANGED
    
    | 
         @@ -1,12 +1,12 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Javaの勉強をしている者です。
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            Javaの勉強をしている中で、staticなメソッドから非staticなメソッドへのアクセスはできないということは理解しました。
         
     | 
| 
      
 3 
     | 
    
         
            +
            Javaの勉強をしている中で、「staticなメソッドから非staticなメソッドへのアクセスはできない」ということは理解しました。
         
     | 
| 
       4 
4 
     | 
    
         
             
            しかし、staticのついているmainメソッドから非staticなメソッドやフィールドへアクセスできている例が多くあります。
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
            例えば下記のコードではstaticなmainメソッドから非staticなtestメソッドへアクセスをし、Aという文字列が出力されると思います。
         
     | 
| 
       7 
7 
     | 
    
         
             
            staticなメソッドから非staticなメソッドへアクセスができないのはずなのに何でだろうと悩んでいます。
         
     | 
| 
       8 
8 
     | 
    
         
             
            mainメソッドの場合は特別な扱いになっているのでしょうか?
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
      
 9 
     | 
    
         
            +
            どうかよろしくお願いします。
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         |