import kr.or.bit.common.Car;
/*
클래스 == 설계도 == 타입
클래스 구성 요소 : [필드 + 함수] + 생성자 함수
필드(field) >> 고유 정보 , 상태 정보 , 참조(부품) 정보 자원 >> 변수
함수,메소드(function) >> 기능(행위)
추가적으로 생성자 >> 필드의 초기화를 목적으로 하는 함수
클래스 , 필드 , 생성자 , 함수 : 영역 (범위 scope) >> 접근자 , 한정자 , 수정자
>> public , private , default , protected 통칭해서 modifier 이라고 한다.
1. public class Car {} // 자동차 설계도 (kr.or.bit.common)
2. class AirPlane {} // 컴파일러가 자동(내부적으로) default 접근자
>> default class AirPlane....
>> ** default 접근자는 : [같은 폴더에서 접근 가능] [다른 폴더에 있으면 서로 접근 불가 ]
>> ** default 접근자는 : 같은 폴더(package) 내에서 [연습 목적]
3. class Air >> src 폴더
4. 연습 : public class Ex01_main 파일 안에서 클래스 생성 연습
하나의 물리적인 자바 파일은 여러개의 클래스를 가질수있다.
Ex01_main.java >> class Test{} 안에 클래스가 있다
단 대표는 하나다 public class 는 하나이다. 물리적인 파일명과 논리적인 파일명이 똑같아야 한다.
>> 나머지는 default
*/
class Test { // 연습 // default
int data; // 컴파일러가 자동으로 default;
public int p_iv; // 어디에서나 공유( 폴더 )
private int pri_iv; // 개인적인 캡슐화 - 숨긴다 . 감추가 private으로 감추다
}
public class Ex01_main {
public static void main(String[] args) {
Car c = new Car();
// AirPlane air = new AirPlane();
Air air = new Air();
Test t = new Test();
int t1 = t.data;
int t2 = t.p_iv;
}
}
다른 패키지
package kr.or.bit.common;
public class Car { // public은 공간의 제약을 받지 않는다.
int i; // 컴파일러가 자동으로 default i;
public int window; // 어디에서나 공유(폴더)
private int pri; //
}
class Car만 해놓으면 default 로 받아들여져서 같은패키지에서만 접근이 가능하다.
package kr.or.bit.common2;
import kr.or.bit.common.*;
public class Car2 {
public static void main(String[] args) {
Car car = new Car();
car.window = 10;
}
}
--------------------------------------------------------------------------------------------------------
package kr.or.bit;
import kr.or.bit.person.Person;
public class Ex01_Ref_Type {
public static void main(String[] args) {
Person person = new Person();
person.name="홍길동";
person.age=100;
person.power=true;
}
}
package kr.or.bit.person;
// class == 설계도 == 데이터 타입
// 설계도는 구체화(메모리) 를 통해서 객체 생성
// 구체화된거 : 객체 = 인스턴스
// 설계도 : 필드(고유,상태,부품) + 메소드(함수) ... + 생성자
// 속성 + 기능
public class Person {
// 멤버 필드
public String name;
public int age;
public boolean power;
}
'BACKEND > 스프링 Spring Boot' 카테고리의 다른 글
[Oracle] Oracle DB(11g)와 이클립스 JDBC 연결하기 (0) | 2020.08.11 |
---|---|
예금 출금 잔고 종료 프로그램 만들어보기 (0) | 2020.08.11 |
직접 다시한번 가위바위보 짜기 (0) | 2020.08.10 |
while문 true 일시 boolean auto = false 무한 반복 , MVC 모델 개념 (0) | 2020.08.10 |
[MVC] MVC 패턴의 필요성 (0) | 2020.08.10 |