Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

WON.dev

Test . constructor 본문

JAVA/chapter08_constructor

Test . constructor

GAWON 2023. 5. 26. 18:06
Q1.
Car.java				필드 -String model, String color, int year, booleans isNewCar
						메소드 - Constructor, output
CarMain.java
★
생성자(모델, 색상, 연식) / 생성자(모델, 색상)
Calendar calendar = Calendar.getInstance();
calendar.get(Calendar.YEAR);


Q2.
Song.java				필드 - String title, String country
						메소드 - Constructor, output
Singer.java				필드 - String name, Song song 
						메소드 - Constructor, setSong(s), output
SingerSongMain.java										
				
Q3.
Grade.java				필드 - int kor, int eng, int mat, double average, char grade
						메소드 - Constructor, getAverage(평균을 리턴), getGrade(학점을 리턴)
Student.java			필드 - String name, String dept, Grade grade
						메소드 - Constructor, output
StudentGradeMain.java			
						
Q4.
Coordinate.java			필드 - int x, int y
						메소드 - Constructor, output
Circle.java				필드 - Coordinate center, double radius
						메소드 - Constructor, output
Ring.java				필드 - Circle inner, Circle outer
						메소드 - Constructor, output
CoordinateCircleRingMain.java
package org.joonzis.test;

import java.util.Calendar;

public class Car {
// 필드
	String model;
	String color;
	int year;
	boolean isNewCar;
// 메소드
public Car() {}
public Car(String m, String c, int y) {
	model=m;
	color=c;
	year=y;
	
}
public Car(String m, String c) {
	model=m;
	color=c;

	Calendar calendar = Calendar.getInstance();
	year=calendar.get(Calendar.YEAR);
	
	if(year>=2022) {
		isNewCar=true;
	}else{
		isNewCar=false;
	}
}
void output(){
	System.out.println("차 모델:"+model);
	System.out.println("차 색깔:"+color);
	System.out.println("차 연식:"+year);
	System.out.println(isNewCar? "새 차":"오래된 차");
	}
}
package org.joonzis.test;

public class CarMain {
	public static void main(String[] args) {
	
		Car c1 = new Car();
		Car c2 = new Car();
		Car c3 = new Car();
		
		System.out.println("~~~~~~~~~~");
		
		c1.output();
		
		System.out.println("~~~~~~~~~~");
		
		c2.output();
		
		System.out.println("~~~~~~~~~~");
		
		c3.output();
	}
}
package org.joonzis.test;

public class Circle {
	Coordinate center;
	double radius;
	
	public Circle() {}
	public Circle(Coordinate center, double radius) {
		this.center = center;
		this.radius = radius;
	}
	
	void output() {
		System.out.println("반지름 : " + radius);
		center.output();
	}
	
}
package org.joonzis.test;

public class Coordinate {
	int x, y;
	
	public Coordinate() {}
	public Coordinate(int x, int y) {
		this.x = x;
		this.y = y;
	}
	void output() {
		System.out.println("좌표 : [" + x + ", " + y + "]");
	}
}
package org.joonzis.test;

public class CoordinateCircleRingMain {
public static void main(String[] args) {
	
	Coordinate coo = new Coordinate(0, 0);
	Circle cir1 = new Circle(coo, 10);
	Circle cir2 = new Circle(coo, 12);
	Ring ring = new Ring(cir1, cir2);
	ring.output();

	}
}
package org.joonzis.test;
//필드 - int kor, int eng, int mat, double average, char grade
//메소드 - Constructor, getAverage(평균을 리턴), getGrade(학점을 리턴)
// 학점 : 90이상 A, 80이상 B, 70이상 C, 60이상 D, 60미만 F
public class Grade {
	int kor, eng, mat;
	double average;
	char grade;

	public Grade() {
	}

	public Grade(int kor, int eng, int mat) {
		this.kor = kor;
		this.eng = eng;
		this.mat = mat;

	}

	double getAverage() {
		return (kor + eng + mat) / 3.0;

	}

	char getGrade() {
		if (getAverage() >= 90) {
			return 'A';
		} else if (getAverage() >= 80) {
			return 'B';
		} else if (getAverage() >= 70) {
			return 'C';
		} else if (getAverage() >= 60) {
			return 'D';
		} else {
			return 'F';
		}

	}

}
package org.joonzis.test;

public class Ring {
	Circle inner, outer;
	
	public Ring() {}
	public Ring(Circle inner, Circle outer) {
		this.inner = inner;
		this.outer = outer;
	}
	void output() {
		System.out.println("안쪽 원의 정보");
		inner.output();
		System.out.println("바깥쪽 원의 정보");
		outer.output();
	}
}
package org.joonzis.test;

public class Singer {
	String name;
	Song song;
	
	public Singer() {}
	public Singer(String name) {
		this.name = name;
	}
	void setSong(Song s) {
		this.song = s;
	}
	void output() {
		System.out.println("가수 이름 : " + name);
		song.output();
	}
	
	
}
package org.joonzis.test;

public class SingerSongMain {
	public static void main(String[] args) {
		
		Song s = new Song("got you", "한국");

		Singer singer = new Singer("신비아파트");
		singer.setSong(s);
		
		singer.output();
		
	}
}
package org.joonzis.test;

//필드 - String title, String country
//메소드 - Constructor, output
public class Song {
	String title, country;

	public Song() {
	}

	public Song(String title, String country) {
		this.title = title; // this(명령어) 구분해주는것
		this.country = country;

	}

	void output() {
		System.out.println("노래 제목 : " + title);
		System.out.println("국가 : " + country);
	}

}
package org.joonzis.test;

public class Student {
	String name, dept;
	Grade grade;
	
	public Student() {}
	public Student(String name, String dept, Grade grade) {
		this.name = name;
		this.dept = dept;
		this.grade = grade;
	}

	void output() {
		System.out.println("학생 이름 : " + name);
		System.out.println("학생 학과 : " + dept);
		System.out.println("평균 : " + grade.getAverage());
		System.out.println("학점 : " + grade.getGrade());
	}
	
}
package org.joonzis.test;

public class StudentGradeMain {
	public static void main(String[] args) {
		Grade g = new Grade(70,80,90);
		
		Student stu = new Student("김씨","컴공", g);
		 stu.output();

	}	
}

'JAVA > chapter08_constructor' 카테고리의 다른 글

chapter04 : book / bookmain  (0) 2023.05.26
chapter03 : circle / circlemain  (0) 2023.05.26
chapter02 : person / personmain  (0) 2023.05.26
chapter01 : rect / rectmain  (0) 2023.05.26
chapter00 : Triangle / TriangleMain  (0) 2023.05.26