java
-
쉽게 배우는 자바 프로그래밍 2판 4장 연습문제JAVA/연습문제 2022. 10. 7. 15:33
# 개발 공부하는 초보자가 작성한 답안이니 정답이 아닐 수 있습니다!!! 1. 다음 중 틀린것은? 필드는 초기화하지 않아도 된다. 생성자 없이 클래스를 정의해도 된다. 생성자는 일반적으로 필드를 초기화한다. 필드는 생성자보다 먼저 선언해야 한다. 🧤정답🧤 4번 - 필드는 클래스내에 어디서든 선언이 가능하므로 순서에는 영향이 없다. 2. 클래스의 구성 요소와 가장 거리가 먼 것은? 필드 지역 변수 메서드 생성자 🧤정답🧤 2번 - 클래스는 필드와 메서드, 생성자로 구성 3. 하나의 클래스는 하나의 객체 인스턴스만 생성할 수 있다. (O, X) 🧤정답🧤 X - 여러 개를 생성할 수 있다. 4. 정적 메서드는 객체를 생성하지 않고도 접근할 수 있다. (O, X) 🧤정답🧤 O - 정적(클래스) 메서드는 객체 생성..
-
쉽게 배우는 자바 프로그래밍 2판 4장 도전문제JAVA/연습문제 2022. 10. 6. 18:23
# 개발 공부하는 초보자가 작성한 답안이니 정답이 아닐 수 있습니다!!! 1. 그림을 참고해 프린터의 상태와 동작을 클래스로 작성하고 테스트 해보자. 📢주어진 값📢 class Printer { int numOfPapers = 0; public void print(int amount) { // 코드 추가 } } public class PrinterTest { public static void main(String[] args) { // Printer 클래스를 테스트 하는 코드 } } 출력 30 🧤정답🧤 class Printer { int numOfPapers = 0; // numOfPapers이라는 필드(멤버 변수, 인스턴스 변수) public void print(int amount) { // print라..
-
자바 Study 연속 호출 Part 13JAVA/개념 2022. 10. 6. 12:26
연속 호출이란 무엇일까?🤔 어떻게 간단하게 표현할까?🤷♀️ 13. 연속 호출 객체가 자신의 메서드를 연속해서 호출할 때 가독성을 위해 간단하게 표현가능하다. class Human { String iden; int stx; public Human setIden(String iden) { this.iden = iden; return this; // 생성된 객체 자신을 반환한다. } public Human setStx(int stx) { this.stx = stx; return this; // 생성된 객체 자신을 반환한다. } public void spendInfor() { System.out.println("내 신원은 " + iden + "이고 내 힘은 " + stx + "이다."); } } public ..
-
자바 Study this와 this() Part 12JAVA/개념 2022. 10. 6. 12:21
this란 무엇일까?🤔 this와 this()의 차이는 무엇일까?🤷♀️ 12. this와 this() 깨알 Tip) 변수이름을 정할 때 의미가 같다면 같은 이름을 사용해야지 가독성이 떨어지지 않는다. this : 객체 자신을 참조할 수 있도록 쓰는 키워드 public class TempThis { private int check; public void setChecking(int c) { check = c; } public void setChekcing(int check) { this.check = check; } } 위 예제는 멤버변수 check와 매개변수 c의 의미는 같기에 아래와 같이 동일한 이름으로 선언할 때 필드(멤버변수 혹은 인스턴스 변수)보다 지역 변수의 우선순위가 높아 지역 변수인 매개변..
-
자바 Study 생성자, 디폴트 생성자, 생성자 오버로딩 Part 10 ~ 11JAVA/개념 2022. 10. 6. 12:13
생성자란 무엇일까?🤔 생성자도 오버로딩을 할 수 있을까?🤷♀️ 10. 생성자의 개념과 선언 클래스로 객체를 생성할 때는 객체의 필드를 초기화해야 한다. 일반적으로 객체는 각각 자신의 필드 값을 가지기 때문에 객체를 생성 후 필드 값을 다시 변경해야한다. 하지만 자바에서는 객체를 생성하는 시점부터 필드를 다양하게 초기화할 수 있도록 생성자 제공 생성자 : 메서드와 비슷하지만, 이름이 클래스 이름과 같고 반환 타입이 없다. 클래스이름 변수 = new 클래스이름(); // 클래스이름() 부분이 생성자이다. 오버로딩 : 같은 이름의 메서드 여러개를 가지면서 매개변수의 유형과 개수가 다르도록 하는 기술 생성자 이름은 클래스 이름과 같고 new 연산자와 함께 사용하며, 객체를 생성할 때 호출 생성자 또한 오버로딩..
-
자바 Study 필드와 메서드 접근, 접근자와 설정자 Part 8 ~ 9JAVA/개념 2022. 10. 6. 11:17
객체가 없다면 접근할 수 있을까?🤔 참조할 변수가 없을 시 어떻게 해야할까?🤷♀️ 8. 필드와 메서드 접근 필드나 메서드는 객체에 소속된 멤버이므로 객체가 없다면 접근할 수 없다. 다른 클래스의 멤버에 접근하려면 해당 클래스의 객체를 먼저 생성 후 아래의 예제와 같이 연결하여 사용 ex) 객체참조변수.멤버 == 사용하려는 외부 객체 이름.필드 이름 혹은 메서드 이름 Game myGold = new Game(); myGold.kill; // 인스턴스 변수 myGold.death(); // 인스턴스 메서드 인스턴스 변수는 개체마다 따로 존재, 인스턴스 메서드는 메서드 영역에서 공유 만약 클래스 내부에서 자신의 멤버에 접근하기 위해 참조할 변수가 없을 시 참조 변수로 this를 사용 혹은 참조 변수 없이 그..
-
자바 Study 필드, 지역 변수 Part 7JAVA/개념 2022. 10. 6. 10:57
필드란 무엇인가?🤔 필드와 지역변수는 무슨 차이일까?🤷♀️ 7. 필드와 지역 변수 클래스 = (필드 + 메서드)로 구성 = (클래스의 멤버)로 구성 필드 : 객체의 속성이나 상태를 나타냄 메서드 : 해당 객체에서 수행할 동작을 나타냄 이외에도 객체를 생성하는 생성자도 클래스의 구성 요소이며, new 연산자로 호출하는 특수한 메서드 필드(멤버 변수, 인스턴스 변수) : 메서드 내부를 제외한 클래스 내부의 어디에서든 위치할 수 있다. 지역변수 : 매개변수나 메서드 내부에서 혹은 for문 등 블록 내부에서 선언된 변수 필드(멤버 변수, 인스턴스 변수)와 지역변수의 차이점 필드는 기본값이 있어서 초기화하지 않고 사용할 수 있지만, 지역 변수는 기본값이 없기 때문에 초기화하지 않은 채 사용하면 오류가 발생한다...
-
자바 Study 객체 생성 Part 6JAVA/개념 2022. 10. 6. 10:52
객체 생성을 위해 무엇이 필요한가?🤔 new 연산자는 무엇을 의미할까?🤷♀️ 6. 객체 생성 객체를 생성할 때는 new 연산자를 사용하는데, 이 연산자는 생성한 객체의 주소를 반환 일반적으로 객체를 생성할 때 해당 객체를 참조할 변수부터 선언 그러나 객체를 두 번 이상 참조하지 않는다면 굳이 참조 변수를 선언하지 않아도 된다! 일반적인 객체 생성 형식 클래스이름 변수; // 객체 변수 선언 변수 = new 클래스이름(); // 객체 생성 변수를 생략한 객체 생성 형식 new 클래스이름(); 클래스는 자바의 데이터 타입에서 참조 타입 중 하나이다. new 연산자를 사용해 객체를 생성하고 반환된 주소를 변수에 대입하면, 변수가 생성된 객체를 참조한다. int ten = 10; // 기초 타입 Ball my..