본문 바로가기
2022-2/자바

자바 - 명령행 매개변수, 클래스, 클래스 상속, 클래스 배열

by 철없는민물장어 2022. 9. 27.
728x90

명령행 매개변수(command-line argument)

main()메소드의 매개변수는 String args[]

프로그램에 입력한 값을 순서대로 args[]배열에 저장한다.

 

명령행 매개변수를 사용할 때는

x=Integer.parseInt(args[0]); 이런 식으로 사용할 수 있다.

(이 예시는 args[0]을 정수형으로 저장하기위해 Integer.parseInt 사용)

 

기본적으로 String타입이기 때문에 다른 자료형으로 사용할 때에는 변환을 해 줘야 한다.

public class q02 {

	public static void main(String[] args) {
		float sum;
		sum=0;
		for(int i=0;i<args.length;i++) {
			sum+=Float.parseFloat(args[i]);
		}
		System.out.println("sum = "+sum);
		System.out.println("avg = "+(sum/args.length));
	}

}

args.length 를 사용하면 배열의 원소의 수를 알 수 있다

(위 코드는 args.length를 이용하여 args[]에 있는 값들의 평균을 구하는 예시임)


 

클래스 상속

class Child extends Parent{
	. . .
}

class 클래스명 extends 부모클래스 <== 이런 형태로 상속선언 가능.


클래스 배열

 

자바에서 배열을 선언할 때 

int[] array = new int[10];

이런 형태로 작성했었다.

클래스 배열도 마찬가지로

Circle[] c = new Circle[5];

이런 방식으로 배열 선언하면 된다

 

예제로 푼 Book 클래스 코드

//22-09-27 예제4-7: 객체 배열 만들기 연습
import java.util.Scanner;
public class Book {
	String bookName;
	String author;
	Book(String bookName, String author){
		this.bookName = bookName;
		this.author = author;
	}
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String bn;
		String au;
		
		Book[] b = new Book[2];
		for(int i=0;i<b.length;i++) {
			System.out.print("책 이름>>");
			bn = sc.nextLine();
			System.out.println("저자 이름>>");
			au = sc.nextLine();
			b[i] = new Book(bn,au);
		}
		
		for(int i=0;i<b.length;i++) {
			System.out.println("b["+i+"] =>"+"("+b[i].bookName+","+b[i].author+")");
			
		}
		sc.close();
	}

}

 

728x90

'2022-2 > 자바' 카테고리의 다른 글

객체와 클래스  (0) 2022.10.11
3장 클래스,캡슐화, 다형성  (0) 2022.10.09
자바 - 객체 복사 참고사항  (0) 2022.09.25
자바 실습 - 방 배정  (2) 2022.09.25
자바 기초 (입출력)  (0) 2022.09.17

댓글