☕JAVA 71

[JAVA] 상속 / super / 부모생성자/ 클래스형변환

상속 : 부모가 가진 것을 자식에게 물려주는 것 노트북은 컴퓨터의 한 종류다. 컴퓨터(부모)-노트북(자식) 침대는 가구의 한 종류다. 혹은 침대는 가구다. 가구(부모)-침대(자식) => is a 관계 혹은 kind of 관계 라고 한다. Car 를 상속받은 Bus 를 class로 표현하는 방법 public class Car{ } public class Bus extends Car{ } public class 클래스명 extends 부모클래스명 자바는 클래스 이름 뒤에 extends 키워드를 적고 부모클래스 이름을 적게 되면 부모 클래스가 가지고 있는 것을 상속받을 수 있게 된다. 상속이란 부모가 가지고 있는 것을 자식이 물려받는 것을 말한다. 즉, 부모가 가지고 있는 것을 자식이 사용할 수 있게 된다. ..

[JAVA] 패키지

관련있는 클래스들을 모아 놓은 폴더(패키지) 패키지에 생성된 클래스 사용하기 java.lang패키지를 제외하고는 다른 패키지에 있는 클래스를사용하려면 import라는 구문을 적어줘야 한다. import com.eightcruz.javastudy.Hello; 위의 코드는 com.eightcruz.javastudy패키지 아래의 Hello클래스를 사용하겠다는 것을 컴파일러와 JVM에게 알리는 것이다. 클래스 이름대신에 * 를 적어도 된다. import com.eightcruz.javastudy.*; import 하지 않고 사용하는 방법 만약 import를 하기 싫다면, 혹은 각기 다른 패키지에 존재하는 같은 이름의 클래스 파일을 사용해야 한다면 아래와 같이 이용한다. com.eightcruz.javastudy..

[JAVA] 메소드 - 오버로딩

2022.08.08 - [JAVA] - [JAVA] 객체지향 / 클래스 Class /메쏘드 Method / Static [JAVA] 객체지향 / 클래스 Class /메쏘드 Method / Static 2022.06.20 - [준비운동/생활코딩 자바] - 6일차 패키지/클래스/인스턴스/상속 JAVA는 객체지향 프로그래밍이다. 객체 지향 프로그래밍 (OOP) 프로그램을 구성하는 요소는 객체이며 이것이 상호작 wearegolden.tistory.com 매개변수의 유형과 갯수가 다르게 하여 같은 이름의 메소드를 여러 개 가질 수 있게 하는 기술 매개변수의 수, 타입이 다른 경우 동일한 이름으로 메소드를 여러 개 정의할 수 있다 public class MyClass2 {//메소드 오버로딩 //메소드 오버로딩은 매..

[JAVA] 생성자 / this / 생성자 오버로딩

생성자 모든 클래스는 인스턴스화 될때 생성자를 사용한다. 생성자의 특징 생성자는 리턴타입이 없다. 생성자를 프로그래머가 만들지 않으면 매개변수가 없는 생성자가 컴파일할 때 자동으로 만들어진다. 매개변수가 없는 생성자를 기본생성자라고 한다. 생성자를 하나라도 프로그래머가 만들었다면 기본생성자는 자동으로 만들어지지 않는다. 생성자의 역할 생성자가 하는 일은 객체가 될 때 필드를 초기화 하는 역할을 수행한다. 자동차가 객체가 될때 반드시 이름을 가지도록 하려면,Car클래스를 다음과 같이 만들어야 한다. public class Car{ String name; int number; public Car(String n){//생성자 name = n;//필드에 선언된 name을 초기화 } } 위의 Car 클래스를 이용..

[JAVA] 열거형 enum

enum 이름 {값1,값2;} 특정 값만 사용해야한다면 열거형을 사용하는 것이 좋다 JDK5 이전에는 상수를 열거형 대신 사용 상수를 이용하는 방법 public class EnumExam { public static final String MALE = "MALE"; public static final String FEMALE = "FEMALE"; public static void main(String[] args) { String gender1; gender1 = EnumExam.MALE; gender1 = EnumExam.FEMALE; } } 상수를 사용했때의 문제점 String으로 선언된 gender1 에는 MALE,FEMALE 둘 중 한가지 값을 갖기 원하는데, gender1의 type이 Strin..

[JAVA] 자료구조- 배열 Array (1차원 배열/2차원 배열)

배열 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료구조. 같은 데이터 타입을 가진 여러 개의 변수가 필요할 때 사용한다. 배열 생성 방법 정수를 4개 저장 할 수 있는 배열을 생성 하는 방법 int[] array1 = new int[4]; 배열에 값을 저장하는 방법 array1[0] = 1; array1[1] = 2; array1[2] = 3; array1[3] = 4; //자바에서 배열의 인덱스는 0번 부터 사용한다. 4개짜리 배열은 0부터 3까지의 인덱스를 가지게 된다. //배열인덱스 0번부터 3번까지 차례로 1,2,3,4 값을 저장한다. 배열에 저장된 값을 꺼내서 사용하는 방법 int value = array1[2]; //array1 이 참조하는 배열의 2번 인덱스에 해당하는 값 3..

[JAVA] 제어문 switch문

switch문 어떤 변수의 값에 따라서 문장을 실행할 수 있도록 하는 제어문! switch문에서 사용하는 키워드는 switch, case, default, break 이다. int value = 2; switch(value) {//만난 케이스부터 다 출력됨. case 1 : System.out.println("1"); break;//만난 케이스에서 바로 빠져나옴 case 2 : System.out.println("2"); break; case 3: System.out.println("3"); break; default : System.out.println("그 외 다른 숫자"); } //JDK7부터는 문자열타입 변수도 가능 String str= "A"; switch(str) { case "A": Syst..

[JAVA] 데이터타입 - 기본형 타입 / 참조형 타입

데이터 타입은 기본형 타입과 참조형 타입 두 가지로 나뉜다. 기본형타입 (클래스가 될 수 없음) 가장 기본이 되는 데이터 타입으로써 정수형, 실수형, 문자형, 불린형을 의미한다. 논리형 = 불린형 논리형은 크기가 1byte이고 true와 false 중에 한 가지 값을 가질 수 있다. 문자형 문자형은 char로 2byte크기를 가집니다. 문자는 작은따옴표를 이용하여 한 글자를 표현할 수 있다. 정수형 정수형은 정수를 표현하는 데이터 타입인데 표현할 수 있는 정수의 범위에 따라서 다양하게 제공된다. 정수형에서 가장 자주 사용하는 int는 4바이트이다. long형은 8byte크기를 가진다. int 보다 더 큰 범위의 정수를 표현하고 싶을때 사용한다. 실수형 실수형은 float과 double형이 있다. floa..

[JAVA] 변수(Variable)와 상수(Constant)

변수란? 값을 저장할 수 있는 메모리의 공간 변수의 선언 타입 변수이름; int count; ( 정수 값을 담을 수 있는 count라는 이름의 변수를 선언) double average; ( 실수 값을 담을 수 있는 average 라는 변수를 선언) 명명규칙. 변수의 이름을 정할 때 자바 언어에서 정해놓은 규칙 식별자 (identifier)는 클래스, 메소드, 변수 등 다양한 대상에 대해 이름이 붙여지는 경우. 그 이름을 뜻 함. 변수의 사용 변수명 = 값; int count; count = 10;//변수형에 10을 담음 count = 20;//변수형에 20을 담음. (윗줄 10은 사라짐) System.out.println(count);//20 double avg = 11.1; //실수 값 이므로 doub..

[JAVA]HashMap

배울게 너무너무 많다.. 진짜 많아 으아아아아앙 참고블로그 정의 Key와 Value 값을 가진 Map..? HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션입니다. Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있습니다. Map은 키와 값으로 구성된 Entry객체를 저장하는 구조를 가지고 있는 자료구조입니다. 여기서 키와 값은 모두 객체입니다. 값은 중복 저장될 수 있지만 키는 중복 저장될 수 없습니다. 만약 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치됩니다. HashMap은 이름 그대로 해싱(Hashing)을 사용하기 때문에 많은 양의 데이터를 검색하는 데 있어서 뛰어난 성능을 보입니다. 진짜 뭐라는건지 화가날정도로 모르겠다..

[JAVA] 객체지향 / 클래스 Class /메쏘드 Method / Static

2022.06.20 - [준비운동/생활코딩 자바] - 6일차 패키지/클래스/인스턴스/상속 JAVA는 객체지향 프로그래밍이다. 객체 지향 프로그래밍 (OOP) 프로그램을 구성하는 요소는 객체이며 이것이 상호작용 하도록 프로그래밍한다. 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. 위키 객체 지향 프로그래밍에서 클래스는 객체를 만들기 위한 확장 가능한 코드 템플릿이며, 상태(멤버 변수) 및 동작(멤버 함수 or 메서드) 구현에 대한 초기값을 제공한다. 많은 언어에서 클래스명은 클래스의 이름(템플릿 자체), 클래스의 기본 생성자(객체를 생성하는 서브 루틴)의 이름 ..

[JAVA] LocalDate,LocalTime,LocalDateTime

참고블로그 LocalDate : 날짜 정보가 필요할 때 사용! 문법 // 로컬 컴퓨터의 현재 날짜 정보를 저장한 LocalDate 객체를 리턴 LocalDate currentDate = LocalDate.now(); // result : 2022-08-06 // 파라미터로 주어진 날짜 정보를 저장한 LocalDate 객체를 리턴한다. LocalDate targetDate = LocalDate.of(2019,11,12); //결과 : 2022-08-06 LocalTime : 시간 정보만 필요할 때 사용 // 로컬 컴퓨터의 현재 시간 정보를 저장한 LocalDate 객체를 리턴. LocalTime currentTime = LocalTime.now(); // 결과 : 18:34:22 // 파라미터로 주어진 시..

[JAVA] charAt()

참고 블로그 정의 String으로 저장된 문자열 중에서 한 글자만 선택해서 char 타입으로 변환해줌 형태 public class Main { public static void main(String[] args) { String str = new String(); char c = ' '; str = "Nice to meet you"; c = str.charAt(0); System.out.println(c);//N } str이 가리키고 있는 문자열에서 인덱스번호에 있는 문자를 char 타입으로 변환! 참조변수.charAt(문자번호);