프로그래밍 언어 59

JAVA) 자바 패키지(Package)

패키지 개념 패키지는 어려울 거 없다. 그냥 우리 컴퓨터에 있는 폴더와 같다. 탐색기로 자바 파일이 있는 폴더로 들어가보면 패키지가 폴더의 형태로 되어있다. 같은 폴더안에 같은 이름의 파일이 올 수 없듯이, 한 패키지 안에 같은 이름의 자바 파일을 넣을 수 없다. 클래스가 100개정도 된다고 했을때 이름을 중복되지 않게 만들기는 어렵다. 중복된 이름이라도 패키지가 다르면 괜찮기에 분리하기 위해, 그리고 비슷한 기능끼리 묶어놓기 위해 패키지를 사용하다. 패키지 형태 프로젝트 안에 아무 패키지도 만들지않으면 (default package)라고 이름이 붙여진다. 패키지를 만들지 않았으니 Class 파일 상단에 패키지경로가 표지되지않지만 패키지를 만들면 파일 상단에 경로가 표시된다. => 다른 패키지에 있는 클..

JAVA) 자바 오버로딩(Overloading)

오버로딩 개념 이름은 같지만 받는 매개변수가 다른 메서드를 만드는것. 메서드가 하는 기능은 똑같은데, 처리 개수가 다르거나 자료형이 다를때 사용한다. 오버로딩의 특징 1) 같은 기능 2) 다른 매개변수 무슨 말인지는 아래 오버로딩의 대표적인(?) 예시 하나로 설명해보려 한다. 오버로딩 예시 엄청 자주 사용하는 System.out.println(); 에서 println()메서드도 오버로딩된 메서드다. println()은 우리가 괄호() 안에 무슨 자료형을 넣든 다 그대로 출력한다. 사실 구조적으로 생각해보면 자료형마다 출력방법이 다 따로따로 있어야 하는데 예를들어 int를 출력할때는 intPrintln, String은 stringPrintln 이런식으로 따로따로 있다고 생각해보면 프로그래밍 하기가 되게 힘..

JAVA) 자바 오버라이딩(Overriding)

오버라이딩 개념 오버라이딩은 "재정의". 기존의 것을 새롭게 정의하는것을 의미한다. 기존 것은 바로 부모 클래스를의미한다. 즉, 자바에서 오버라이딩은 부모가 가지고 있는 것을 가져와서 내꺼로 새로 만드는 것이다. 오버라이딩을 하기 전 알아야 하는 개념 자식객체로 A메서드를 호출했는데 자식한테는 없고, 부모에게 있으면 부모의 A를 호출한다. (마치 미성년자가 잘못한걸 해결할 능력이 없어서 부모를 부르는것과 같음..ㅎ) B객체로 method_A를 호출했는데 B한테 해당메소드가 없어서 A클래스로 가서 찾아서 출력했다. 이처럼 자식은 자신한테 없으면 상위클래스로 가서 찾는 특징이 있다. 오버라이딩 사용 이유 중복을 제거하기 위해. 클래스 A과 B가 똑같이 [펜을 만드는 작업]을 수행한다고 가정해보자. 만약 둘다..

JAVA) 자바 생성자(Constructor) 이해하기 및 정리

생성자를 처음 배웠을때는 잘 이해하기 힘들었지만 계속 찾아보니 이해가되며, 쉬운 개념임을 알았다. 이번 블로그에서는 내가 이해한 생성자를 비유해가며 적어보려고 한다. 1. 생성자 정의 지식백과에 나오는 생성자는 이렇게 적혀있다. 객체 지향 프로그래밍(OOP)에서 쓰이는 객체 초기화 함수. 객체의 생성 시에만 호출되어 메모리 생성과 동시에 객체의 데이터를 초기화하는 역할을 한다. 자바 파일을 실행하면 클래스가 메모리에 로딩되고, 클래스 안의 생성자가 호출되어 초기화를 진행한다. 초기화라는게 뭘까? 초기화라는것은 처음·기본값도 맞지만. 자바에서는 값을 넣는것을 초기화라고 한다. 자바에서 배열을 만들때 int[] arr; 을 선언한다고 하고, arr = {1, 2, 3} 이렇게 값을 넣는것을 초기화라고 한다...

JAVA) 기본 배열의 선언, 출력, 추가, 변경, 삭제, 찾기

1. 배열의 저장 공간메모리의 Heap영역안에 배열을 저장할 공간을 할당받는다.다른 int, double 등 기본 데이터타입은 변수가 그 데이터 자체를 저장하고있지만,배열은 변수가 배열이 저장된 주소를 가리킨다.  따라서 배열을 출력하면 값이 아니라 이상한값이 나온다. int a = 10;int arr3[] = { 1, 2 };System.out.println(a); // 10System.out.println(arr3); // [I@6f2b958e분명 배열에 {1, 2}를 넣었는데 출력해보니 다른게 나온다. 즉, 변수에는 배열이 저장된 장소의 주소값이 들어있는것이다.     2. 배열 선언자바의 기본 배열은 만들때 크기를 지정해야한다. 1) 선언만   선언만 하면 아직 메모리에 저장할 공간이 생기기 전..

JAVA) 클래스 변수와 인스턴스 변수

1. 클래스 변수와 인스턴스 변수. 클래스변수와 인스턴스 변수의 차이는 겉으로 봤을땐 static이 있고, 없고의 차이다. class A { static String st = "클래스 변수"; String inst = "인스턴스 변수"; } 메서드도 마찬가지로 겉모습이 static이 있고 없고의 차이 class A { .... static void static_method() { // 클래스 메서드 } void instance_method() { // 인스턴스 메서드 } } 2. 클래스 vs 인스턴스 접근성 클래스 메서드는 클래스 변수에 접근 가능 (O) 인스턴스 변수에 접근 불가능 (X) 인스턴스 메서드는 클래스변수, 인스턴스변수 둘 다 접근 가능 (O) 3. 메서드 호출 방법 클래스 안의 메서드를 호..

JavaScript) 자바스크립트 날짜와 시간 사용하기

자바스크립트의 내장객체중 하나로, 날짜와 시간정보를 제공한다. 날짜 객체는 월을 표현할때 0~11 로 표현하므로 1월이 0, 12월이 11이고, 요일은 일(0) ~ 토(6) 으로 표현한다. 1. 현재 날짜 형식: 요일 월 일 연도 시:분:초 let day = new Date(); document.write(day); // Sat Jan 29 2022 20:26:38 GMT+0900 (한국 표준시) Date()에 어떤 형태로 날짜를 넣냐에 따라 다르게 출력된다. var day2 = new Date("2022/1/1"); // Sat Jan 01 2022 00:00:00 GMT+0900 (한국 표준시) var day3 = new Date(2022,1,1); // Tue Feb 01 2022 00:00:00 ..

반응형