본문 바로가기

java

java 공부 5일차(2주차-3)

상속

상속으로 인해 상위 클래스의 method를 사용할 수 있게 된다. toString()의 경우 PrintWriter, Writer 클래스에서 구현하지 않은 method이지만 Object에서 구현이 되어 있기 때문에 사용할 수 있다.

같은 메소드가 두 클래스 이상에 존재하는 가능성도 있다. 예를 write(String)의 경우 PrintWriter, Writer에 모두 존재하는데(override), 이때 write(String)을 사용할 경우 PrintWrite 클래스(자기가 속한 클래스)의 메소드가 실행된다.

Open Type Hierarchy를 누르면 상위 클래스를 볼 수 있다.

 

앱 만들기

AccountingApp을 만들고 실행해 보았다.

import javax.swing.JOptionPane;
public class AccountingApp {

	public static void main(String[] args) {

		double valueOfSupply = Double.parseDouble(args[0]);
//		double valueOfSupply = Double.parseDouble(JOptionPane.showInputDialog("value of supply"));
		
		double vatRate = 0.1;
		double vat = valueOfSupply * vatRate;
		double total = valueOfSupply + vat;
		double expenseRate = 0.3;
		double expense = valueOfSupply * expenseRate;
		double income = valueOfSupply - valueOfSupply * expense;
		double dividend1 = income * 0.5;
		double dividend2 = income * 0.3;
		double dividend3 = income * 0.2;

		System.out.println("Value of supply : " + valueOfSupply);
		System.out.println("VAT : " + vat);
		System.out.println("Total : " + total);
		System.out.println("Expense : " + expense);
		System.out.println("Income : " + income);
		System.out.println("Dividend 1 : " + dividend1);
		System.out.println("Dividend 2 : " + dividend2);
		System.out.println("Dividend 3 : " + dividend3);

	}

}

실행 방법
1) Eclipse-Run에서 Argument 입력
2) 경로 복사 후 cmd 창에서 java 파일 실행
(코드에서 args[]로 값을 받았을 경우 값을 입력하지 않으면 오류 발생)
3) JOptionPane.showInputDialog(String)으로 입력창 표시

 

 

 

추가) eclipse 단축키/기능
Ctrl+Alt+down/up : 줄복사
Alt+down/up : 줄 옮기기
Ctrl+d : 줄 제거
Ctrl + Shift + R : Open Resource
Ctrl + H : Find
Ctrl+Shift+F : 코드 정렬
바꾸고 싶은 값 드래그 후 Edit>Find/Replace>Replace all
특정 부분을 변수로 바꾸고자 할 때 : 해당 부분 드래그 후 우클릭>Refactor>Extract Local Variable>변수 이름 입력(Alt+Shift+L) - 값은 같지만 의미가 다른 값들에 유의

Ctrl+/  : 주석처리
Ctrl+\ : 주석해제

'java' 카테고리의 다른 글

java 공부 7일차(2주차-5)  (0) 2021.07.17
java 공부 6일차(2주차-4)  (0) 2021.07.16
java 공부 4일차(2주차-2)  (0) 2021.07.14
java 공부 3일차(2주차-1)  (0) 2021.07.13
java 공부 2일차(1주차-2)  (0) 2021.07.11