Java(자바) 5日次

블로그 移轉·2022년 10월 28일

Java

목록 보기
5/20

Java 面接 族譜 整理 (5日次)

1. 下段에 Star를 出力하세요。

  • 1番問題

    實行畫面
    *****
    *****
    *****
    *****
    *****

    public class Star {
    	public static void main(String[] args) {
       
           for (int i = 1; i <= 5; i++) {
               for (int j = 1; j <= 5; j++) {
                   System.out.print("*");
               }
               
               System.out.println();
           }
       }
    }
  • 2番問題

    實行畫面
    *
    **
    ***
    ****
    *****

    public class Star {
    	public static void main(String[] args) {
    		
    		for (int i = 1; i <= 5; i++) {
    			for (int j = 1; j <= i; j++) {
    				System.out.print("*");
    			}
    			
    			System.out.println();
    		}
    	}
    }
  • 3番問題

    實行畫面
       *
      ***
     *****
    *******

    保留

2. 下段의 內容이 意圖하지 않은 結果를 出力하는 理由를 說明하시오。

char ch = '가';
System.out.print(ch + 'n');

'가'의 유니코드 값과 '\n'의 유니코드 값이 int形式으로 演算되어 int값이 出力된다。
意圖대로 表現하기 爲해서는 '\n'을 "\n"으로 修正해줘야한다。

  • ch + "\n"이 되는 理由
    ch는 char타입、"\n"는 String타입이기 때문에 ch가 String타입으로 變換된 後에 演算이 되어 文字列로 出力되는 것이다。

3. 變數의 scope는?

  • scope : 領域、範圍
    1) 變數는 變數가 宣言된 時點부터 그 中括弧 블록 內에서 使用可能하다。
    2) 클래스 外에서 變數宣言은 不可能하다。
    3) 同一한 領域 內에서 同一한 이름의 變數宣言은 不可能하다。

4. 地域變數란?

  • 地域變數(local variable) : 函數 內에서 宣言된 變數(範圍는 宣言된 函數 內)

5. 인스턴스變數란?

  • 인스턴스變數(instance variable) : 函數 外、클래스 內에서 宣言된 變數(範圍는 클래스 全體)

6. 클래스의 構成要素는 무엇인가?

  • 클래스의 構成 : 變數(데이터)와 函數(機能 : 變數컨트롤)
  • 클래스의 意味
    1) 클래스名.java (必히 클래스明이어야 한다。) 코딩上에서의 클래스
    2) 클래스名.class (컴파일된 파일)

7. 圓의 넓이를 求하는 프로그램을 아래와 같이 作成하시오。

  • 圓클래스를 만들 것
  • main메소드를 가진 다른 클래스에서 圓 客體를 生成할 것

  • Circle.java
    public class Circle {
    	int radius;
       double getArea() {
       	return radius * radius * Math.PI;
       }
    }
  • CircleTest.java
    public class CircleTest {
    	
       public static void main(Strings[] args) {
       	
           Circle circle = new Circle();	// 客體(instance) 生成
           
           circle.radius = 10;
           System.out.println(circle.getArea());
       }
       
    }

8. 客體란 무엇인가?

客體(instance)는 「클래스」 라는 틀을 通해 만들어낸 實體를 意味한다。
客體를 生成한다는 것은 該當클래스의 .class파일을 메모리에 올린다는 것을 意味한다。

9. 下段의 內容과 같이 出力되도록 函數를 作成하시오。

實行畫面
1부터 10까지의 合 : 55
1부터 20까지의 合 : 210
1부터 30까지의 合 : 465
1부터 40까지의 合 : 820
1부터 50까지의 合 : 1275
1부터 60까지의 合 : 1830
1부터 70까지의 合 : 2485
1부터 80까지의 合 : 3240
1부터 90까지의 合 : 4095
1부터 100까지의 合 : 5050

  • SumMain.java
    public class SumMain {
    	
       public static void main(String[] args) {
       	
           GetSum getsum = new GetSum();	// 客體生成
           
            getsum.sum(10);
    		getsum.sum(20);
    		getsum.sum(30);
    		getsum.sum(40);
    		getsum.sum(50);
    		getsum.sum(60);
    		getsum.sum(70);
    		getsum.sum(80);
    		getsum.sum(90);
    		getsum.sum(100);
            // getsum客體의 sum函數를 呼出、1~50까지의 合을 求한다。
           
       }
       
    }
  • GetSum.java
    public class GetSum() {
    	
       int sum = 0;
       
       public void sum(int num) {
    		
    		int sum = 0;
    		
    		for (int i = 1; i <= num; i++) {
    			sum += i;
    		}
    		
    		System.out.println("1부터 " + num + "까지의 합 : " + sum);
    		
    	}
       
    }

10. 下段의 內容과 같이 出力되도록 函數를 作成하시오。

  • SumMain.java

    public class SumMain {
    
       public static void main(String[] args) {
    		
           Sum sum = new Sum();	// 客體生成
    
           sum.printSum(10);
           
       }
    
    }
  • Sum.java

    public class Sum {
    	public void printSum(int num) {
       	int sum = 0;
           
           for (int i = 0; i <= num; i++) {
           	sum += i;
               
               System.out.print(i);
               
               if (i < num) {
               	System.out.print(" + ");
               } else {
               	System.out.print(" = " + sum);
               }
               
           }
       }
    }
profile
移轉했읍니다。

0개의 댓글