맞는데 왜 틀릴까..?

Java

[Java] Class

안도일 2022. 10. 22. 15:56
Class 활용 예제

 

Product.java

public class Product {

	String productCode;
	int stockNum;

	void addStock(int amount) {
		stockNum += amount;
	}
	
	int subStock(int amount) {
		if (stockNum<amount)
			return 0;
		stockNum -= amount;
		return stockNum;
	}
	
	Product(String productCode, int stockNum){
		this.productCode = productCode;
		this.stockNum = stockNum;
	}	
}

 

ClassExam01.java

public class ClassEXam01 {

	public static void main(String[] args) {
		
		Product obj = new Product("52135", 200);
		
//		obj.productCode = "52135";
//		obj.stockNum = 200;
		System.out.println("상품코드: " + obj.productCode );
		System.out.println("재고 수량: " + obj.stockNum);
		
		obj.addStock(1000);
		System.out.println("재고 수량: " + obj.stockNum);
	}
}

 

 

실행결과

상품코드: 52135
재고 수량: 200
재고 수량: 1200

 

하나의 클래스를 사용

 

public class Goods {
    //하나의 클래스를 활용하여 작성하라
	String name;
	int price, numOfStock, sold;
	
	public static void main(String[] args) {
		
		Goods cam = new Goods();
		cam.name = "Samsung";
		cam.price = 400000;
		cam.numOfStock = 30;
		cam.sold = 50;
		
		System.out.println("이름 = "+cam.name);
		System.out.println("가격 = "+cam.price);
		System.out.println("수량 = "+cam.numOfStock);
		System.out.println("판매량 = "+cam.sold);
	}

}

 

실행결과

이름 = Samsung
가격 = 400000
수량 = 30
판매량 = 50

 

객체 참조

 

객체를 생성하여 

class Fruit{
	int apple = 5;
	int straw = 10;
	int grapes = 15;
}
public class Fruitcal {

	public static void main(String[] args) {
		Fruit f1 = new Fruit(); //Fruit 객체를 생성하여 f1객체참조 변수가 참조
		
		Fruit f2 = f1; //또 다른 객체 참조변수 f2가 Fruit 클래스 타입의 f1객체를 참조

		int sum= f1.apple+f1.straw+f1.grapes;
		
		System.out.println("f1 = " + sum);
		
		sum = f2.apple+f2.straw+f2.grapes;
		System.out.println("f2 = " + sum);
		
		f1.apple = 10;
		f1.grapes = 30;
		f2.straw = 20;
		
		sum= f1.apple+f1.straw+f1.grapes;
		System.out.println("f1 = " + sum);
		
		sum = f2.apple+f2.straw+f2.grapes;
		System.out.println("f2 = " + sum);
	}
}

실행 결과

f1 = 30
f2 = 30
f1 = 60
f2 = 60

'Java' 카테고리의 다른 글

[Java] try catch 예외 처리  (0) 2022.10.22
[Java] main() 메소드의 매개변수 args[]  (0) 2022.10.22
[Java] String Buffer, Tokenizer, Scanner  (0) 2022.10.22
[Java] 생성자 (Constructor)  (0) 2022.10.22
[Java] Static  (0) 2022.10.22