빈객체 생성하기
Main.java
public class Main {
public static void main(String[] args) {
}
}
MyClass.java
class MyClass {
public static void main(String[] args) { // 아무것도 하지 않는 빈클래스
MyClass myClass = new MyClass(); // 인스턴스 작성
}
}
자기 이름을 말하고 인사하는 객체 만들기
public class Main {
public static void main(String[] args) {
MyClass myClass = new MyClass();
myClass.hello();
}
}
public class MyClass {
String myName = "새로운 클래스"; // 필드 생성
void hello {// hello 메소드 생성
System.out.print(myName + "입니다. 안녕하세요");
}
}
자기 이름을 말하고 인사하는 객체 만들기 수정
public class Main {
public static void main(String[] args) {
MyClass myClass = new MyClass();
MyClass raichu = new MyClass();
MyClass picachu = new MyClass();
raichu.myName = "라이츄"
picachu.myName = "피카츄"
myClass.hello();
raichu.hello();
picachu.hello();
}
}
public class MyClass {
String myName = "새로운 클래스"; // 필드 생성
void hello {// hello 메소드 생성
System.out.println(myName + "입니다. 안녕하세요");
}
}
새로운 클래스입니다. 안녕하세요
라이츄 입니다. 안녕하세요
피카츄 입니다. 안녕하세요
계산 문제를 1개만 만드는 클래스를 만들기
Main.java
public class Main {
public static void main(String[] args) {
CalcQuiz q = new CalcQuiz();
System.out.println(q.getQuestion());
System.out.print(q.getAnswer());
}
}
calcQuiz.java
import java.util.Random;
class CalcQuiz { //계산 문제를 1개 만드는 클래스
String question; // 문제를 저장할 필드
String answer; // 답을 저장할 필드
CalcQuiz() {
createQuestion();
}
void createQuestion(){
Random rnd = new Random();
int a = rnd.nextInt(100);
int b = rnd.nextInt(100);
question = a + "x" + b + "=?";
answer = Integer.toString(a * b);
}
String getQuestion() {
return question; //문제를 알려주는 메소드
}
String getAnswer() {
return answer; //답을 알려주는 메소드
}
}
계산 문제를 100개만 만드는 클래스를 만들기
Main.java
public class Main {
public static void main(String[] args) {
int quizNum = 5; //문제수
CalcQuiz[] quiz = new CalcQuiz[quizNum]; //크기가 quizNum인 배열 생성
for(int i = 0; i < quizNum; i++) {
quiz[i] = new CalcQuiz(); //인스턴스(객체)생성
}
for(int i=0; i<quizNum; i++) { // 모든문제 표시
System.out.println("문제" + i + ":" + quiz[i].getQuestion());
}
System.out.println("---------------------------------------");
for (int i=0; i<quizNum; i++) { // 모든답 표시
System.out.println("정답" + i + ":" + quiz[i].getAnswer());
}
}
}
calcQuiz.java
import java.util.Random;
class CalcQuiz { //계산 문제를 1개 만드는 클래스
String question; // 문제를 저장할 필드
String answer; // 답을 저장할 필드
CalcQuiz() {
createQuestion();
}
void createQuestion(){
Random rnd = new Random();
int a = rnd.nextInt(100);
int b = rnd.nextInt(100);
question = a + "x" + b + "=?";
answer = Integer.toString(a * b);
}
String getQuestion() {
return question; //문제를 알려주는 메소드
}
String getAnswer() {
return answer; //답을 알려주는 메소드
}
}
필드와 로컬변수를 쉽게 구별하는 this
calcQuiz.java
import java.util.Random;
class CalcQuiz { //계산 문제를 1개 만드는 클래스
String question; // 문제를 저장할 필드
String answer; // 답을 저장할 필드
CalcQuiz() {
createQuestion();
}
void createQuestion(){
Random rnd = new Random();
int a = rnd.nextInt(100);
int b = rnd.nextInt(100);
this.question = a + "x" + b + "=?";
this.answer = Integer.toString(a * b);
}
String getQuestion() {
return this.question; //문제를 알려주는 메소드
}
String getAnswer() {
return this.answer; //답을 알려주는 메소드
}
}
Online editor and compiler
Paiza.IO is online editor and compiler. Java, Ruby, Python, PHP, Perl, Swift, JavaScript... You can use for learning programming, scraping web sites, or writing batch
paiza.io
온라인 개발환경 paiza를 통해서 실습함
'Java 1학년' 카테고리의 다른 글
[캡슐화] 필드 제한 / 메소드 구분 하기 (0) | 2022.02.21 |
---|---|
[Java 1학년] 객체 지향 / 폴리모피즘 (0) | 2021.10.05 |
[Java 1학년] 객체 지향 / 상속 (0) | 2021.10.05 |
[Java 1학년] 객체 지향 / 캡슐화 (0) | 2021.10.05 |