프로그래밍/Java Programming

객체생성 및 추상화 작업

방구석개발 2018. 4. 6. 05:38

학생 객체를 추상화하여 클래스를 만들었을 때 필드는 이름 학번 java, c ,datastructure,database, 총점,평균이라고 하자. 기능적으로 객체를 생성시켜줄 수 있는 생성자와 평균, 총점을 구하는 기능,그리고 객체의 값을 출력하는 기능을 포함하고 있다.이러한 클래스를 정의하고 객체를 생성시키토록 하여 출력하여 보시오.


1.Student.java


package dsdsds;

public class Student<cal> {
	String name;
	int st_Nr;
	int java;
	int c;
	int datastructure;
	int database;
	int sum;
	double ave;
	
	Student(){}
	Student(String n,int nr,int sj,int sd, int sc, int sb){
		name=n;
		st_Nr=nr;
		java=sj;
		datastructure=sd;
		database=sb;
		c=sc;
			} 
void setsu(String n,int nr,int sj,int sd, int sc, int sb){
		name=n;
		st_Nr=nr;
		java=sj;
		datastructure=sd;
		database=sb;
		c=sc;
}
void cal_sum(){
	sum=java+datastructure+c+datastructure;
}		
void cal_ave(){
	ave=sum/4.0;
}
String out(){
	String s;
	s=("이름:" +name+ " 학번:\t" +st_Nr+ " 총점:\t" +sum+ " 평균:\t" +ave);
	return s;


		}
	}


2. Use_Student.java


package dsdsds;

public class Use_Student {

	public static void main(String[] args) {
		Student s[];
		s=new Student[5];
		String n[]={"신현의","염철용","윤승욱","이공휘","이유나"};
		int nr[]={1,2,3,4,5};
		int j[]={90,80,70,100,85};
		int c[]={90,80,70,100,85};
		int ds[]={90,80,70,100,85};
		int db[]={90,80,70,100,85};
		
		for(int i=0;i<s.length;i++){
			s[i]=new Student(n[i],nr[i],j[i],c[i],ds[i],db[i]);		
					
		}
		for(int i=0;i<s.length;i++){
		s[i].cal_sum();
		s[i].cal_ave();
		}
		for(int i=0;i<s.length;i++){
			s[i].setsu(n[i], nr[i], j[i], c[i], ds[i], db[i]);
		}
		for(int i=0;i<s.length;i++){
		System.out.println(s[i].out()); 
			}

		}
	}


결과