분류 전체보기 153

코딩초보의 자바(Java)공부 18일차 { 열거형 -ENUM - }

오늘은 열거형 Enum에 대해알아보겠습니다 !!!1) 열거형 - Enum Type public enum Grade { GOLD , BASIC , DIAMOND} 회원의 등급은 상수로 정의한 `BASIC` , `GOLD` , `DIAMOND` 만 사용할 수 있다는 뜻이다. 열거형을 정의할 때는 `class` 대신에 `enum` 을 사용한다.원하는 상수의 이름을 나열하면 된다 enum 타입을 활용해등급별로 할인액이 달라지는 코드를만들어볼게요 public class DiscountService {  public int discount(Grade grade , int price) { int discountPercent = 0;  switch (grade) { case BASIC: discountPercent =..

Java공부(코딩) 2024.12.31

코딩초보의 자바(Java)공부 17일차 { 래퍼 , Class 클래스 }

오늘은 래퍼클래스에 대해알아보겠습니다!!!1) 래퍼클래스 - 기본형의 한계 기본형의 한계자바는 객체 지향 언어이다. 그런데 자바 안에 객체가 아닌 것이 있다. 바로 `int` , `double` 같은 기본형.기본형은 객체가 아니기 때문에 다음과 같은 한계가 있다. 1)객체가 아님**: 기본형 데이터는 객체가 아니기 때문에, 객체 지향 프로그래밍의 장점을 살릴 수 없다. 예를 들어 객체는 유용한 메서드를 제공할 수 있는데, 기본형은 객체가 아니므로 메서드를 제공할 수 없다.추가로 객체 참조가 필요한 컬렉션 프레임워크를 사용할 수 없다. 그리고 제네릭도 사용할 수 없다. (이 부분은 뒤에서 설명한다.) 2)null 값을 가질 수 없음**: 기본형 데이터 타입은 `null` 값을 가질 수 없다. 때로는 데이터..

Java공부(코딩) 2024.12.30

코딩초보의 자바(Java)공부 16일차 { String 클래스 }

오랜만에 올립니다....목금토 놀러가서올리지 못했네요 ㅠ오늘은 String클래스에 대해알아볼게요 !!1) String 클래스자바에서 문자열을 다루는대표적인 타입은char , String  char : 문자하나를 저장할 수 있음단어를 저장하려면char[]의 형태로 저장해야함  String :단어를 저장할 수도있음참조형 클래스임! `String` 은 클래스다. `int` , `boolean` 같은 기본형이 아니라 참조형이다. 따라서 `str1` 변수에는 `String` 인스턴스의 참조값만 들어갈 수 있다. 문자열은 매우 자주 사용된다. 그래서 편의상 쌍따옴표로 문자열을 감싸면 자바 언어에서 `new String("hello")`와 같이 변경해준다. (이 경우 실제로는 성능 최적화를 위해 문자열 풀을 사용하는..

Java공부(코딩) 2024.12.29

코딩초보의 자바(Java)공부 15일차 { Object클래스 }

오늘은 자바의기본이되는Object클래스에 대해 알아보겠습니다1) java.lang 패키지자바의 가장 기본이 되는 라이브러리lang = language 의 줄임말 @@ java.lang 패키지의 대표적인 클래스들`Object` : 모든 자바 객체의 부모 클래스`String` : 문자열`Integer` , `Long` , `Double` : 래퍼 타입, 기본형 데이터 타입을 객체로 만든 것`Class` : 클래스 메타 정보`System` : 시스템과 관련된 기본 기능들을 제공2) Object 클래스모든클래스의 최상위부모클래스는Object클래스다(상속을 받지않아도 자동상속)메모리에도 존재 즉extends Object 가묵시적으로 실행된단 뜻 코드로 예를 한번 들어볼게요 public class ObjectMai..

Java공부(코딩) 2024.12.25

코딩초보의 자바(Java)공부 14일차 { 다형성과 설계 }

2024.12.23 - [Java공부(코딩)] - 코딩초보의 자바(Java)공부 13일차 { 다형성 활용 } 코딩초보의 자바(Java)공부 13일차 { 다형성 활용 }2024.12.22 - [Java공부(코딩)] - 코딩초보의 자바(Java)공부 12일차 { 다형성 } 코딩초보의 자바(Java)공부 12일차 { 다형성 }객체지향 프로그래밍의 대표적인 특징으로는 캡슐화, 상속, 다형성이 있어요ddkk1120.tistory.com여기서 공부한것을 토대로 설계에 어떻게 적용할지 얘기를 해보고예제문제를 통해 더 쉽게이해해보도록 해요!1) 다형성다형성의 실제 비유키보드 , 마우스배우 - 역할자동차 - 운전자처럼역할과 구현을 분리역할과 구현을 분리하면단순해지고 , 변경에 용이해진다. 역할 = 인터페이스구현= 인터페..

Java공부(코딩) 2024.12.24

코딩초보의 자바(Java)공부 13일차 { 다형성 활용 }

2024.12.22 - [Java공부(코딩)] - 코딩초보의 자바(Java)공부 12일차 { 다형성 } 코딩초보의 자바(Java)공부 12일차 { 다형성 }객체지향 프로그래밍의 대표적인 특징으로는 캡슐화, 상속, 다형성이 있어요그 중에서 다형성은 객체지향 프로그래밍의꽃이라 불립니다. 앞서 학습한 캡슐화나 상속은 직관적으로 이해하기ddkk1120.tistory.com에서 배운것으로 활용을 한번 해 볼 겁니다!! 1) 다형성 활용  다음과 같은 상속구조로다형성을 활용한코드를 만들어 볼게요! public class Animal { public void sound() {}} /////////////////////////////////////////////////////////////////////////publ..

Java공부(코딩) 2024.12.23

코딩초보의 자바(Java)공부 12일차 { 다형성 }

객체지향 프로그래밍의 대표적인 특징으로는 캡슐화, 상속, 다형성이 있어요그 중에서 다형성은 객체지향 프로그래밍의꽃이라 불립니다. 앞서 학습한 캡슐화나 상속은 직관적으로 이해하기 쉽습니다.반면에 다형성은 제대로 이해하기도 어렵고, 잘 활용하기는 더어려워요.... 하지만 좋은 개발자가 되기 위해서는 다형성에 대한 이해가 필수!!.1) 다형성이름 그대로 "다양한 형태" 의 뜻을 가지고있어요.즉 , 한 객체가 여러 타입의 객체로 취급될 수 있는 능력을 뜻한다. 다형성을 이해하기 위해서는 크게 2가지 핵심 이론을 알아야 한다.**다형적 참조****메서드 오버라이딩**  1-1)다형적 참조다형적 참조를 이해하기 위해 다음과 같은 간단한 상속 관계를 코드로 만들어보자.package poly.basic; public ..

Java공부(코딩) 2024.12.22

코딩초보의 자바(Java)공부 11일차 { 상속 }

3~4일만에 글 씁니다...학원상담,자취방 등해결할건 다 해결하고왔어요!상속관계에 대해서알아보겠습니다 !좋은 하루 되세요!! 1) 상속관계기존 클래스의 필드와 메서드를 새로운 클래스에서 재사용하게 해준다. 이름 그대로 기존 클래스의 속성과 기능을 그대로 물려받는 것이다. 상속을 사용하려면 `extends` 키워드를 사용하면 된다. 그리고 `extends` **대상은 하나만 선택**할 수 있다.(단일 상속만 지원 !! )1-1) 용어정리부모클래스 : 상속을 통해 자신의필드 , 메서드를다른클래스에게 제공하는 클래스 자식클래스:부모클래스로부터필드,메서드를 상속받는 클래스 코드로 한번 상속관계를 나타내볼게요.부모클래스 : Car자식클래스 : GasCar package extend1;public class Car..

Java공부(코딩) 2024.12.21

코딩초보의 자바(Java) 공부 10일차-2 { final }

12월16~19은학교시험도 있고서울가서학원상담 및 방을 알아보러가야해서글을 못 올릴 것 같아요 ㅠㅡㅠfinal 변수에 대해배워볼께요분명 유용하게 쓰일 수 있는키워드 입니다 !1) final변수final은 말 그대로 끝!!마지막!!변수에 final키워드가 붙을 시값을 변경할 수 없어요 변수 뿐 아니라method, class 등활용 가능해요 ! 코드로 알아봐요!public class Final_1 {  public static void main(String[] args) { //final 지역 변수 final int a = 10; a=20; //여기서 오류 발생 (final키워드가붙으면값을 변경할수없음) System.out.println(a);  int b = 10; b=20; System.out.print..

카테고리 없음 2024.12.15

코딩초보의 자바(Java) 공부 10일차 { 메모리구조와 static }

\오늘 다룰 내용은 조금 복잡하기에김영한 님의 자바강의를기반으로 작성해볼게요!! 1) 자바 메모리 구조자바의 메모리 구조는 크게 메서드 영역, 스택 영역, 힙 영역 3개로 나눌 수 있다. **메서드 영역**: 클래스 정보를 보관한다.이 클래스 정보가 커피머신이다. **스택 영역**: 실제 프로그램이 실행되는 영역이다. 메서드를 실행할 때 마다 하나씩 쌓인다. **힙 영역**: 객체(인스턴스)가 생성되는 영역이다. `new` 명령어를 사용하면 이 영역을 사용한다. ex)커피머신으로 만든 커피가 존재하는 공간이다. 참고로 배열도 이 영역에 생성된다.(참조형) 메서드영역)메서드영역은 프로그램에 필요한공통 데이터를 모두 관리한다. 클래스 정보: 클래스의 실행 코드(바이트 코드), 필드, 메서드와 생성자 코드등 ..

Java공부(코딩) 2024.12.15
반응형