본문 바로가기

3.1 SpringBoot/Java19

[java/기초] 인터페이스 인터페이스다중 상속처럼 사용할 수 있는 기능추상 메소드와 상수(final)만으로 구성extends로 상속하던 클래스와달리 implements로 구현한다접근제어자 interface 인터페이스명{ pubilc abstract 반환타입 메소드명(매개변수){};}인터페이스 구현class D implements A { //D는 인터페이스 A를 구현함}class E implements A,B { //E는 인터페이스 A,B를 구현함 //다중 인터페이스 구현}class F extends C implements A { //F는 C를 상속받고 인터페이스 A를 구현함} 2024. 7. 13.
[java/기초] 추상클래스 추상 클래스하나 이상의 추상 메소드를 포함하는 클래스반드시 구현해야하는 부분에 대해서 명시적으로 표현꼭 해야하는 부분을 미리 만들어 놓은거라 생각하면 편함추상 클래스 자체는 객체 생성불가추상 메소드(Abstract Method)자식클래스에서 반드시 오버라이딩 해야하는 메소드선언만하고 구현 내용은 없음abstract void print(); //구현한 내용이 없음추상 클래스 상속추상클래스 자체로는 객체 생성이 불가능 하기 때문에상속을 해야한다.//예시abstract class ab{ int a; abstract int plus(int a);}class a extends ab{ a(int a){ this.a = a; } @Override int plus(int .. 2024. 7. 13.
[java/기초] 다형성 다형성(Polymorphism)한 객체가 여러가지 타입을 가질 수 있는 것부모클래스 타입의 참조 변수로 자식클래스 인스턴스 참조참조변수와 다형성서로 상속관계에 있는 클래스 사이에서만 형변환이 가능메서드 매개변수가 같은 부모클래스라면 부모클래스 타입을 매개변수타입으로 선언가능배열 혹은 자료구조에 부모 클래스로 데이터 타입으로 지정하면 여러자식클래스를 저장가능instanceof연산자로 참조변수가 참조하는 인스턴스의 실제타입을 확인하는데 사용 가능class Person{}class Baby extends Person{}Person p1 = new Baby(); //Baby b1 = new Persone(); // Xinstanceof실제 참조하고 있는 인스턴스의 타입확인class Person{}class Ba.. 2024. 7. 11.
[java/기초] 상속 상속(Inheritance)기존 클래스에 기능 추가 및 재정의하여 새로운 클래스를 정의새로운 클래스 뒤에 extends와 기존 클래스를 적어서 표현부모 클래스 : 상속대상이 되는 기존클래스자식 클래스 : 기존 클래스를 상속하는 클래스부모 클래스의 필드와 메소드가 상속되는데(생성자, 초기화블록은 상속X)다중상속은 불가능하다(자식1개에 부모2개 불가능) → 단일 상속만 가능반대로 부모클래스 1 →  자식클래스 2개이상 가능상속받은 자식클래스는 다른 자식클래스의 부모클래스로 가능하다.prviate의 맴버는 자식클래스에서도 접근불가default 맴버는 내부 패키지의 자식클래스만 접근가능같은 내용의 코드를 한 곳에서 관리함으로써 코드의 중복이 줄어듦.//상속 class 자식클래스명 extends 부모클래스명{}S.. 2024. 7. 10.
[Java/기초] 클래스와 객체 클래스 ( class)객체를 정의하는 설계도 (예시 붕어빵 틀)객체(object) 클래스에서 정의한 것을 토대로 메모리(실제 저장공간)에 할당된 것 (예시 붕어빵) 즉, 실체이다.인스턴스클래스와 객체의 관계클래스로부터 객체를 선언 (인스턴스 화)어떤 객체는 어떤 클래스의 인스턴스Class 사용public class 클래스명{ // 객체 변수 // 메소드 // + 생성자 // +접근제어자 // + static }//기본 생성자클래스명 객체명 = new 클래스명();생성자객체가 생성될 때 자동으로 호줄되고규칙은 클래스명과 동일해야하고 리턴타입은 없다.thisthis : 자기자신을 나타냄this() : 생성자overloading(오버로딩)한 클래스 내에서 같은 이름의 메소드를.. 2024. 7. 9.
[Java/기초]조건문 ,반복문 1. 조건문 조건문이란 조건의 참과 거짓에 따라 서로 다른 작업을 수행할 수 있는 문장입니다.자바의 조건문은 if-else문과 switch문으로 분류됩니다  if문 : 조건에 따라 무엇을 실행할지 판단하는 분기 구조단순 if문 if(조건식){ 실행문장; //조건식이 참인경우 실행}if-else문 if(조건식){ 실행문장; //조건식이 참인경우 실행}else{ 실행문장; //조건식이 거짓인경우 실행} 다중 if-else문 if(조건식1){ 실행문장; //조건식1이 참인경우 실행}else if(조건식2){ 실행문장; // 조건식1이 거짓이고 조건식2가 참인경우 실행}else { 실행문장; // 모든 조건식이 거짓인 경우 실행} swich문 : 입력값에 따라 어떤 case를 실행할지 판단하는 분기 구조s.. 2024. 7. 7.
[java/기초] 연산자 연산자연산자 실행해보기//증감++ -- //예시 a++ ++c 둘의 차이점은 실습을 통해 알아가보자//산술+ - * / %//시프트>> >>//비교> = b? a:b;//대입= *= /= += -= &= ^= |= >= >>>= 증감 연산자  (1순위)++  : 1증가ex) a++ : a의 값을 다른연산 후에 1증가ex) ++a : a의 값을 다른연산 전에 1증가--  :1감소a--  :  a의 값을 다른연산 후에 1감소--a  :  a의 값을 다른연순 전에 1감소  산술 연산자+  :더하기-   : 빼기*   : 곱셈/   : 나누기%   : 나머지시프트 연산자>>   피연산자의 비트 열을 오른쪽으로 이동 후 빈 공간에 음수는 1, 양수는 0으로 채움피연산자의 .. 2024. 7. 7.
[java/기초] 변수와 자료형 변수와 자료형목차   1. 변수   2. 자료형      2-1) 기본형      2-2) 참조형 1. 변수(Variable)데이터를 저장하는 메모리 공간에 붙여준 이름int a=20; // 정수형 변수 a 선언후 20으로 초기화char b; // 문자형 변수 b 선언식별자(identifier): 클래스,변수,상수,메소드에 붙이는 이름 식별자 이름 규칙'_'와 '$'를 제외한 특수문자, 공백은 사용 할 수없다.예약어(if,class등),null,true,false는 식별자로 사용할 수 없다.식별자의 첫 번째 문자에 숫자는 사용할 수 없다대소문자를 구분합니다.길이제한이 없음.표기법카멜표기법(camelCase)가장 앞의 문자느 소문자로, 나머지 단어의 첫 문자는 대문자로 표기ex) myName, userPh.. 2024. 7. 6.
[JAVA] 정말 짧게 읽는 JAVA란? JavaWrite once, run anywhere한 번 쓰면, 어디서든 실행된다.객체 지향언어이며 플랫폼 독립적인 언어플랫폼 독립적운영체제마다 다르게 코드를 작성을 하지 않아도 된다.즉, 하나의 코드로 어디서든 실행가능.단순 포인터가 없어 메모리관리 용이(가지비컬렉션)객체지향언어클래스와 객체중심번역 언어자바의 프로그램 소스는 중간코드인 바이트코드로 변환바이트코드는 JVM에서 인터프리터의 도움으로 실행실행과정자바소스코드(.java) → 자바 컴파일러 → 바이트 코드(.class) → 각 운영체제 JVM JVM : Java Virtual Machine / 자바가상머신Java 분류크게 다음과 같은 3가지로 나뉨Java SE(Java Standard Edition)기본 개발 환경. Java의 핵심 API와 기.. 2024. 7. 1.
728x90