본문 바로가기

ETC

(26)
[복습_JAVA] 25 ● 접근 권한 제어자(접근자) 1. default - 다른 패키지에서 접근 불가 2. public - 모든 곳에서 접근 가능 - 대표 클래스를 의미할 때 사용한다. - 모든 파일에서 public 클래스는 1개이다. 3. protected - 다른 패키지에서 접근 불가(자식은 허용) 4. private - 다른 클래스에서 접근 불가 ● 객체 간 타입 비교 1. instanceof - 객체 instanceof 클래스타입 : 조건식(true 또는 false 중 하나가 나오는 식) - 객체가 클래스타입이면 true - 객체가 클래스타입이 아니면 false 실습(접근자) 1. Access.java 파일을 생성하여 private 변수와 public 메소드를 생성한다. public class Access1 { int..
[복습_JAVA] 24 ● 상속(inheritance) 1. 기존에 선언된 클래스의 필드를 새롭게 만들 클래스의 필드로 사용하고자 할 때 사용한다. 2. 여러 클래스 선언 시 필드가 겹치는 경우, 부모 클래스를 먼저 선언하고 공통필드를 묶어서 자식 클래스에게 상속해준다. ● 상속 문법 - extends 키워드를 사용한다. (ex) class A{ A 필드 } class B extends A{ A, B 필드 } - A : 부모 클래스, 상위 클래스, 슈퍼 클래스, 기반 클래스 - B : 자식 클래스, 하위 클래스, 서브 클래스, 파생 클래스 ● super() - 부모 생성자 - 자식 클래스 타입의 객체로 부모 필드에 접근할 수 있다. - 하지만 자식 생성자만 호출하기 때문에, 자식 필드만 메모리에 할당된다고 생각할 수 있다. -..
[복습_JAVA] 23 실습(메소드와 변수) - 어떠한 직업의 수익 창출 프로그램 1. Primitive.java(필요한 메소드 모음) 작성하기 - 필요한 변수 선언하기 String position = "원시인"; // 등급 int grade = 3; // 등급 점수 int money; // 현재 잔액 int income; // 수익률 int rating; // 사냥 추가 성공률 // 전역변수(모든 영역에서 Random 객체를 사용하기 위해 선언) Random r = new Random(); ※ 생성자 생성하기 public Primitive() {;} - 수렵하기(사냥) boolean hunt(Wild wild) { int[] arData = new int[10]; // 10%단위 확률 배열 int rating = 0; // ..
[복습_JAVA] 22 ● 변수의 종류 1. 지역변수(local variable) - 클래스 중괄호 영역은 포함되지 않으며, 메소드 또는 그 안의 영역에서 선언된 변수 2. 매개변수(parameter) - 메소드의 소괄호 안에서 선언되는 변수, 해당 메소드 안에서만 사용 가능 3. 전역변수(global variable) - 클래스 중괄호 영역에서 선언된 변수, 클래스 내 전 지역에서 사용 가능 4. 정적변수(static variable, class variable) - 객체 간 공유, 편의성 ● 저장기억부류(Storage class) 실습(변수) 1. 전역 변수 ※ 변수 및 메소드 생성 public class Variable1 { int data = 10; void increaseData() { System.out.printl..
[복습_JAVA] 21 실습(메소드) - 동물 키우기 프로그램 1. 필요한 변수 선언하기 String name; // 이름 int age; // 나이 String feed; // 먹이 종류 int feedCount; // 먹이 개수 int life; // 생명 ​ ​ ※ 생성자 생성하기 public Animal() {;} public Animal(String name, int age, String feed, int feedCount, int life) { this.name = name; this.age = age; this.feed = feed; this.feedCount = feedCount; this.life = life; } 2. 먹기(먹이 개수 1 감소, 생명 1 증가) boolean eat() { if(feedCoun..
[복습_JAVA] 20 실습(메소드) - 자동차 shop 프로그램 1. 브랜드, 색상, 가격 변수 선언하기 // 전역변수는 자동으로 초기화된다. String brand; // null String color; // null int price; // 0 boolean check; // false String pw = "0000"; int policeCount; // 0 ※ 생성자 생성하기 public Car() {;} public Car(String brand, String color, int price) { this.brand = brand; this.color = color; this.price = price; } public Car(String brand, String color, int price, String pw) {..
[복습_JAVA] 19 실습(메소드) 1. 두 정수의 나눗셈을 해주는 메소드(몫과 나머지) import java.util.Scanner; public class MethodTask { int[] div(int num1, int num2) { int[] result = new int[2]; result[0] = num1 / num2; // 몫 result[1] = num1 % num2; // 나머지 return result; } } 2. 홀수를 짝수로, 짝수를 홀수로 바꿔주는 메소드 import java.util.Scanner; public class MethodTask { int change(int num) { return ++num; // 증가값이 바로 변영되어야 하므로 전위형으로 작성한다. } public static vo..
[복습_JAVA] 18 ● 메소드 - 이름 뒤에 소괄호 - 단, 키워드(예약어) 뒤에 소괄호가 있다면 메소드가 아니다. ● 메소드 선언 - (1)리턴타입 (2)메소드명(자료형 (3)매개변수명, ...) { (4)실행할 문장; (5)return 리턴값; } (1) 리턴타입 - 리턴 값이 있다면 리턴 값의 자료형을 작성하고, 리턴 값이 없다면 void를 작성한다. (2) 메소드명 - 동사로 작성한다. (ex) 연필(매개변수)을 쓴다(메소드) (3) 매개변수명 - 외부에서 전달받을 값이 있다면, 자료형과 순서에 맞게 선언해준다. - 생략이 가능하지만 생략 시, 외부에서 값을 전달받을 수 없다. (4) 실행할 문장 - 생략이 가능하다 - 메소드의 기능을 구현하는 로직을 작성한다. (5) return - 생략이 가능하다. ● 메소드 주..