반응형
package chap06.sec03.exam02;
/**
* packageName : chap06.sec03.exam02
* fileName : Korean
* author : GGG
* date : 2023-09-20
* description : 한국인 클래스
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class Korean {
// TODO: 속성, 생성자함수, 메소드
// 속성
String name; // 이름
String ssn; // 주민번호
// 생성자 함수
Korean(){};
Korean(String strName, String strSsn){
name = strName;
ssn = strSsn;
};
}
package chap06.sec03.exam02;
/**
* packageName : chap06.sec03.exam02
* fileName : KoreanApplication
* author : GGG
* date : 2023-09-20
* description : 실행 클래스
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class KoreanApplication {
/**
* 한국인 객체를 생성하고 매개변수 2개짜리 생성자를 이용해서 속성을 초기화하세요.
* 초기화 한 결과를 출력하세요.
* // 결과 :
* // k1.name : 박자바 (문자열)
* // k1.ssn : 011225-1234567 (문자열)
* // k2.name : 김자바
* // k2.ssn : 930525-0654321
*/
public static void main(String[] args) {
Korean k1 = new Korean("박자바", "011225-1234567");
Korean k2 = new Korean("김자바", "930525-0654321");
System.out.println("k1.name " + k1.name);
System.out.println("k1.ssn " + k1.ssn);
System.out.println("k2.name " + k2.name);
System.out.println("k2.ssn " + k2.ssn);
}
}
생성자 오버로딩
package chap06.sec03.exam03;
/**
* packageName : chap06.sec03.exam03
* fileName : Car
* author : GGG
* date : 2023-09-20
* description : 생성자 오버로딩
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class Car {
// TODO: 객체의 3요소 = 속성, 생성자, 함수
// 속성
String company = "현대자동차"; // 제조사
String model; // 자동차 모델(SUV, 세단)
String color; // 자동차 색깔
int maxSpeed; // 최고속도
// 기본 생성자
public Car(){};
// 매개변수 1개짜리 생성자
public Car(String model){
// TODO: this? : 객체 자기 자신을 의미하는 객체변수
// 객체의 사용 : 객체변수.속성명
this.model = model;
}
// 매개변수 2개짜리 생성자
public Car(String model, String color ){
this.model = model;
this.color = color;
}
// 매개변수 3개짜리 생성자
// 자동화 기능이용 : alt + insert => 생성자 속성 선택 후 확인
public Car(String model, String color, int maxSpeed) {
this.model = model;
this.color = color;
this.maxSpeed = maxSpeed;
}
}
package chap06.sec03.exam03;
/**
* packageName : chap06.sec03.exam03
* fileName : CarApplication
* author : GGG
* date : 2023-09-20
* description : 실행 클래스
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class CarApplication {
public static void main(String[] args) {
// 객체 생성 : 모든 생성자 이용하기
Car car1 = new Car(); // 기본 생성자
Car car2 = new Car("자가용"); // 매개변수 1개
Car car3 = new Car("자가용", "빨강"); // 매개변수 2개
Car car4 = new Car("자가용","빨강",200); // 매개변수 3개
// 결과출력
System.out.println(car1.color);
System.out.println(car1.company);
System.out.println(car1.maxSpeed);
System.out.println(car1.model);
System.out.println("--------------------------------");
System.out.println(car4.color);
System.out.println(car4.company);
System.out.println(car4.maxSpeed);
System.out.println(car4.model);
}
}
연습문제
/**
* Member 객체를 생성하고 싶습니다. 생성자에서 name 속성과 id 속성을
* 초기화 할 수 있도록 Member 클래스를 작성해 보세요.
*/
package chap06.sec03.verify.exam02;
/**
* packageName : chap06.sec03.verify.exam02
* fileName : Member
* author : GGG
* date : 2023-09-20
* description : 회원 클래스
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class Member {
String name;
String id;
public Member(String name, String id) {
this.name = name;
this.id = id;
}
}
package chap06.sec03.verify.exam02;
/**
* packageName : chap06.sec03.verify.exam02
* fileName : MemberApplication
* author : GGG
* date : 2023-09-20
* description : 실행 클래스(main)
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class MemberApplication {
/**
* Member 객체를 생성하고 싶습니다. 생성자에서 name 속성과 id 속성을
* 초기화 할 수 있도록 Member 클래스를 작성해 보세요.
* @param args
*/
public static void main(String[] args) {
Member member = new Member("홍길동", "hong");
System.out.println("name :" + member.name);
System.out.println("id :" + member.id);
}
}
아래 메인 함수을 참고하여 오류를 수정할 클래스를 생성해보세요
package chap06.sec03.verify.exam03;
/**
* packageName : chap06.sec03.verify.exam03
* fileName : BoardApplication
* author : GGG
* date : 2023-09-20
* description :
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class BoardApplication {
public static void main(String[] args) {
Board board = new Board("제목");
Board board2 = new Board("제목", "내용");
Board board3 = new Board("제목", "내용", "작가");
System.out.println("title :" + board.title);
System.out.println("title2 :" + board2.title);
System.out.println("content2 :" + board2.content);
System.out.println("title3 :" + board3.title);
System.out.println("content3 :" + board3.content);
System.out.println("content3 :" + board3.writer);
}
}
package chap06.sec03.verify.exam03;
/**
* packageName : chap06.sec03.verify.exam03
* fileName : Board
* author : GGG
* date : 2023-09-20
* description : 모델 클래스
* 요약 :
* <p>
* ===========================================================
* DATE AUTHOR NOTE
* —————————————————————————————
* 2023-09-20 GGG 최초 생성
*/
public class Board {
String title;
String content;
String writer;
public Board(String title) {
this.title = title;
}
public Board(String title, String content) {
this.title = title;
this.content = content;
}
public Board(String title, String content, String writer) {
this.title = title;
this.content = content;
this.writer = writer;
}
}
반응형
'Java > Java 이론' 카테고리의 다른 글
자료구조 (0) | 2023.09.25 |
---|---|
MVC 디자인 패턴 (0) | 2023.09.22 |
생성자 함수 (0) | 2023.09.20 |
클래스 (0) | 2023.09.20 |
[JAVA 다시보기] 자바기초 (1) | 2023.09.19 |