back-end&DB/Java
-
JAVA 추상과 인터페이스back-end&DB/Java 2023. 5. 22. 16:12
1. 추상화(Abstraction) 객체에서 공통된 속성과 행위를 추출하는 기법 상세한 정보는 무시하고 필욯나 정보들만 간추려서 구성 1.1 추상 메소드(abstract method) 선언되어 있으나 boy가 구현되어 있지 않는 메소드 추상 메소드 선언 abstract 키워드로 선언 public abstract int getValues(); 1.2 추상 클래스 (abstract class) 추상 메소드를 하나라도 가진 클래스 클래스 앞에 반드시 abstract라고 선언해야 한다. 추상 메소드가 하나도 없지만 클래스 앞에 abstract로 선언한 경우 - 추상 클래스의 특징 추상클래스의 객체는 생성할 수 없다. - 추상 클래스 필요성 상속관계에서 서브 클래스가 반드시 구현 해야 함을 알릴 때(강제성) - ..
-
JAVA MVC패턴back-end&DB/Java 2023. 5. 22. 12:31
1.MVC패턴 - Model 실행에 직접적인 관여 X 데이터를 담거나 데이터를 보내거나 , 수정, 삭제하는 객체 - Controller 어플리케이션의 행위를 정의 사용자가 데이터를 수정하고 요청 하는것에 대한 이벤트를 처리하는 부분 - View Model 데이터를 기반으로 실제 사용자에게 보여지는 페이지 1.1 MVC 패턴을 사용하는 이유? view 로직과 비즈니스 로직을 분리하여, 각자의 역활에 집중하여 개발 가능 유지보수가 편리 어플리케이션의 확장성과 유연성 증가 중복코딩 문제점 해결 2. 실습 - 뮤직 플레이 만들기! 2.1 view 만들기! view 역할 : 사용자 인터페이스(화면을 보거나, 선택을 하게 하는 기능) ex) 재생, 정지, 다음곡, 이전곡, 프로그램 종료 package View; i..
-
JAVA 상속과 오버라이딩(Overriding)back-end&DB/Java 2023. 5. 19. 23:18
1. 상속 이미 작성된 클래스(상위 클래스)의 특성을 그대로 이어받아 새로운 클래스( 하위 클래스)를 생성하는 기법 기존 코드를 그대로 재사용하거나 재정의 > 재사용 + 확장 - 자바의 상속 기존 클래스의 변수(데이터)와 메소드(로직,코드)를 물려받아 새로운 클래스를 구성하는 것. - 자바 상속의 특징 - 다중 상속을 지원하지 않는다. - 상속의 회수에 제한을 두지 않는다. - 모든 클래스는 java.lang.Object를 상속받는다. 1.1 class 마우스 (부모 클래스, 슈퍼 클래스) 좌측, 우측 클릭이 출력이 가능합니다. public class Mouse { public void leftclick() { System.out.println("좌측 클릭 하기"); } public void rightC..
-
JAVA 생성자와 접근제한자back-end&DB/Java 2023. 5. 19. 14:36
1.생성자 1.1 생성자의 특징 - 생성자는 하나 이상 선언되어야 함 - 생성자 이름은 클래스 이름과 동일 - 생성자는 리턴 타입을 지정 할 수 없다. - 생성자는 new를 통해 객체를 생성할 때만 호출됨 - 생성자는 메소드다 개발자는 생성자를 정의하지 않으면 자동으로 기본 생성자가 정의됨 컴파일러에 의해 자동 생성 기본 생성자를 디폴트 생성자(default constructor)라고도 함 만약 default 생성자만 존재하고 default에 아무런 기능이 없을 경우 생략이 가능함 public class Student { // 클래스의 이름과 동일 String name; String number; int age; public Student(String name, String number, int age)..
-
JAVA 객체 지향 프로그래밍(OOP)back-end&DB/Java 2023. 5. 18. 08:55
1. 객체 지향 프로그래밍(Object Oriented Programming : OOP) 여러 개의 독립된 단위, 즉 객체들의 모임으로 파악하고자 하는 것 각각의 객체는 메세지를 주고 받고 데이터를 처리 - 절차 지향 프로그래밍(Procedural Programming) 프로그램을 수행하는 일련의 절차나 함수를 중심으로 구성 대표적인 언어로 C언어가 있다. 1.1 객체지향 프로그래밍 특징 캡슐화 Encapsulation 상속 Inheritance 추상화 Abstract 다형성 Polymorphism - 캡슐화 (Encapsulation) 관련된 필드(속성)와 메소드(기능)를 하나로 묶고, 실제 구현 내용을 외부로 감추는 기법(정보은닉) 만일의 상황(타인이 외부에서 조작)을 대비해서 특정 속성이나 메소드를..
-
JAVA Array와 ArrayListback-end&DB/Java 2023. 5. 17. 12:27
1. 배열(array) 같은 타입의 데이터들을 하나로 묶어 다루는 것 int [] arr = new int[5]; String [] arr2 = new String[2]; 1.1 배열의 한계 배열 선언시 고정된 크기로 선언 배열의 크기를 바꿀 수 없다. String[] arr = new String[2]; arr[0] = "A"; arr[1] = "B"; arr[2] = "C";// size(); (메소드) int [] arr = new int[5]; ArrayList arrList = new ArrayList(); System.out.println("배열의 크기 : " + arr.length); // 배열의 크기 : 5 System.out.println("arrList의 크기 : " + arrList...
-
JAVA 메소드back-end&DB/Java 2023. 5. 16. 18:01
1. 메소드(Method) public static void main(String[] args) 접근제한자(public), 보이드(공허 void ), 메인메소드 (스트링 배열에 args 변수) 1.1 메소드 리턴 타입 메소드의 수행결과를 어떤 자료형으로 반환할 것인지 알려 주는 것 아무것도 반환하지 않을 경우 - void(return문을 작성하지 않음) 결과값을 반환하는 경우 - return문을 사용 - 리턴타입에 맞는 자료형으로 반환하도록 해아함 메소드의 수행 결과를 어떤 자로형으로 반환 할 것인지 알려주는 것 리턴타입이 void의 경우 반환 받을 수 없음 public void methodTest(){ int a = 10; int b = 4; } public static void main(String[..
-
JAVA 2차원 배열back-end&DB/Java 2023. 5. 15. 17:02
1. 2차원 배열 배열 만드는 법 자료형[ ][ ]변수명 = new 자료형 [ ][ ]; int n = 5; int [][] intArray = new int[n][n]; System.out.println(intArray); // 주소값 출력 System.out.println(intArray[0]); // 주소값 출력 System.out.println(intArray[0][0]); // 값 출력 0,0 에 1를 대입해서 출력하면 1이 나옵니다. intArray[0][0] = 1; System.out.println(intArray[0][0]); // 1출력 0,0~0,4에 1부터 5까지 대입 intArray[0][0] = 1; intArray[0][1] = 2; intArray[0][2] = 3; intA..