본문 바로가기

Java/본격 Java 클래스

(15)
[Java] 실습 - 사과판매2 지난 시간 복습 . 문제점 - 판매자나 구매자의 인스턴스를 여러개 만들어도 모두 동일한 데이터를 갖게 됨. ex) 보유사과 20개에 단가 1000원인 판매자들이 생성됨. 모든 인스턴스의 멤버변수 값이 동일하다는 것을 의미 해결책 - 인스턴스의 멤버변수 값을 각기 다르게 지정할 수 있어야 함. . 예제 /* 과일 판매자 : fruitSeller - 멤버변수 : 사과개수(numOfApple), 매출액(myMoney), 가격(APPLE_PRICE) - 메소드 : 판매(saleApple()), 현황보기(showSaleResult()) 과일 구매자 : fruitBuyer - 멤버 변수 : 사과개수(numOfApple), 사과 살 돈(myMoney) - 메소드 : 구매(buyApple()), 현황보기(showBuy..
[Java] 실습 - 사과 판매1 과일 판매자 : fruitSeller - 멤버 변수 : 사과개수(numOfApple), 매출액(myMoney), 가격(APPLE_PRICE) - 메소드 : 판매(saleApple()), 현황보기(showSaleResult()) 과일 구매자 : fruitBuyer - 멤버 변수 : 사과개수(numOfApple), 사과 살 돈(myMoney) - 메소드 : 구매(buyApple()), 현황보기(showBuyResult()) 제어 : FruitSaleMain1 - fruitSeller와 fruitBuyer 클래스의 인스턴스를 생성하여 사과구매를 실행시킴 - 구매 후 판매자와 구매자의 현황을 확인 . . 예제 class FruitSeller { int numOfApple = 20; // 보유 사과 개수 int ..
[Java] 인스턴스(instance) 인스턴스(instance) - 클래스를 기반으로 만들어 내는 객체로 일반적으로 객체라 하면 인스턴스를 의미합니다. - 인스턴스에는 클래스의 멤버들이 들어오게 되며 각각 멤버 변수, 멤버 메소드라 합니다. 정확하게는 인스턴스변수와 인스턴스메소드라 하지만 보통 멤버라 지칭합니다. - 인스턴스의 생성 목적은 다른 클래스의 기능(멤버)들을 사용하기 위해서입니다. . . 예제 class NumberEx{ int num = 0; // 멤버변수로 현 클래스내에서 자유롭게 사용할 수 있음. public void addNum(int n){ num += n; } public int getNumber(){ return num; } } class PassInstance { public static void main(Strin..
[Java] 전역 변수 - Local Variable 메인 메소드 바깥에서 선언한 변수가 해당 클래스 메소드에서 모두 사용할 수 있다. . . 예제 class LocalVariable { public static void main(String[] args) { boolean scope = true; if (scope) { int num = 0; num++; System.out.println(num); } else { int num = 1; num++; System.out.println(num); } test(); } public static void test(){ int num = 3; System.out.println(num); } }
[Java] 메소드 실습 - 100이하 소수 찾기 소수 - 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수. 이를테면, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31,… 등은 모두 소수이다. 4=(22), 6=(2×3), 16=(24)… 등, 소수가 아닌 자연수를 합성수(合成數)라 하며, 1은 소수도 아니고 합성수도 아니다. 자연수 n이 소수인지 아닌지를 판정하려면, 2≤p≤ √n인 범위에 있는 모든 소수 p로 n을 나누어 보아, 나누어 떨어지지 않으면 소수이고, 나누어 떨어지면 합성수이다. 즉, 소수는 양의 약수로 1과 자신만을 가진 자연수이며 합성수는 양의 약수가 1과 자기자신을 포함하여 3개 이상인 자연수이다. 정수의 열 2, 3, 4, 5,…로부터 소수를 찾아내는 방법으로 그리스 시대부터 알려진 에라토스테네스의 ..
[Java] 메소드(Method) Return 키워드 return 키워드 - 리턴타입이 void가 아닌 메소드에서 결과값을 리턴하는 명령어 - 리턴타입이 void 메소드에서는 메소드를 강제로 종료시키는 역할을 합니다. . . 예제 1 class MethodReturn { public static void main(String[] args) { int result = adder(4,5); System.out.println("4와 5의 합 : " + result); System.out.println("3.5의 제곱 : " + square(3.5)); String result2 = grade(88); System.out.println("합격여부 : " + result2); } public static int adder(int n1, int n2){ int add..
[Java] 메소드 기초 메소드(method) - 클래스가 가지는 기능을 의미하는 것으로 거의 대부분의 작업이 이루어지는 곳입니다. - 선언법 접근제어지시자 [static] 리턴타입 메소드명([매개변수(들)]){ 메소드의 기능 구현; } 접근제어 지시자 : 정의된 메소드에 접근할 수 있는 권한을 부여하는 키워드 - public, protected, default, private 중 택일 static : 클래스 멤버인지 여부를 지정하는 키워드 - main()메소드가 있는 클래스에서는 무조건 static을 붙여야 한다. 리턴타입 : 메소드 실행 결과를 리턴할 때 지정하는 자료형(리턴하지 않아도 됩니다.) - void : 리턴값이 없는 메소드를 의미 - 모든 자료형 : 기본자료형 뿐만 아니라 객체(클래스)도 입력할 수 있습니다. 매개..