/*
1. 가로 : width , 세로 : height
2. 넓이 : calcArea()
둘레 : calcRound()
*/
public class Rect {
int width;
int height;
double area;
double round; public Rect() {
width = 4;
height = 3;
}
public Rect(int width,int height) {
this.width = width;
this.height = height;
}
void calcArea(){
area = width*height;
}
double calcArea(int width,int height){
area = width*height;
return area;
}
void calcRound(){
round = (width+height)*2;
}
double calcRound(int width,int height){
round = (width+height)*2;
return round;
}
}
/*
1. 반지름 : radius
2. 넓이 : calcArea()
둘레 : calcRound()
*/
public class Circle {
int radius;
double area;
double round;
public Circle() {
radius = 4;
}
public Circle(int radius) {
this.radius = radius;
}
void calcArea(){
area = radius*radius*3.14;
}
double calcArea(int radius){
area = radius*radius*3.14;
return area;
}
void calcRound(){
round = radius*2*3.14;
}
double calcRound(int radius){
round = radius*2*3.14;
return round;
}
}
public class DohyungTest {
public static void main(String[] args) {
Rect r1=new Rect();
//default
//가로가4이고 세로가3인 사각형의 넓이는 12이고 둘레는 14입니다.
r1.calcArea();
r1.calcRound();
System.out.println("가로가 "+r1.width+"이고 세로가 "+r1.height+"인 사각형의 넓이는 "+r1.area+"이고 둘레는 "+r1.round+"입니다.");
int width = 5;
int height = 3;
Rect r2=new Rect(width,height);
//맘대로 가로,세로 정함
r2.calcArea(width,height);
r2.calcRound(width,height);
System.out.println("가로가 "+r2.width+"이고 세로가 "+r2.height+"인 사각형의 넓이는 "+r2.area+"이고 둘레는 "+r2.round+"입니다.");
Circle c1=new Circle();
//default
//반지름이 4인 원의 넓이는 48.xxx이고 둘레는 24.xxx입니다.
c1.calcArea();
c1.calcRound();
System.out.println("반지름이 "+c1.radius+"인 원의 넓이는 "+c1.area+"이고 둘레는 "+c1.round+"입니다.");
int radius = 5;
Circle c2=new Circle(radius);
//맘대로 반지름 정함
c2.calcArea(radius);
c2.calcRound(radius);
System.out.println("반지름이 "+c2.radius+"인 원의 넓이는 "+c2.area+"이고 둘레는 "+c2.round+"입니다."); } }
3.14대신 Math.PI를 쓸 수도 있다.
또한 제곱도 Math.pow( , )로 쓸 수 있다. (oracle에선 power(2,3) = 2^3 =8 )
static으로 생성되어있는 변수,method는 객체를 생성할 필요 없이 클래스의 이름으로 직접 사용할 수 있다.
Math m = new Math();
m.PI << 할 필요 없음. 에러남.
static은 변수의 값들이 공유된다. 따라서 static을 함부로 쓰면 위험하다.
내가 1000원밖에 없는 데 다른 사람이 1억 너으면 모든 사람들의 돈이 1억이 될 수 있음.
[출처] 빡쏘끼룩
'IT > JAVA' 카테고리의 다른 글
[Java]상속 (inheritance)/overriding(재정의)/super (0) | 2020.07.18 |
---|---|
[Java]스타크래프트 마린 만들기/call by reference, call by value (0) | 2020.07.17 |
[Java]method 오버로딩 (0) | 2020.07.05 |
[Java]생성자 사용 (0) | 2020.07.04 |
[Java] 함수의 사용 (0) | 2020.07.03 |