전체 글

싸피 비전공9기 비전공자바 서식하는 초보개발자 백준 - https://www.acmicpc.net/user/esu08259 깃허브 - https://github.com/qkrrlgus114
· 오류해결
평소처럼 파이프라인을 작성해서 실행했는데 /var/jenkins_home/workspace/backend-pipeline@tmp/durable-f2782b40/script.sh: 6: Syntax error: Unterminated quoted string 위와 같은 에러가 발생했다. 파이프라인에서 많이 만나는 문법 에러라는데 pipeline { agent any stages { // 현재 작업 공간 내의 모든 것을 삭제 stage('Clean Workspace') { steps { deleteDir() } } // 깃허브 클론을 진행 stage('github Clone') { steps { git branch: 'backend', credentialsId: 'parkgihyeon_user_pass', ..
· 오류해결
스프링부트 3 버전을 사용하면서 이전 프로젝트를 실행시키는데 아래와 같은 에러가 발생했다. Required by: project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.2.0 Caused by: org.gradle.internal.component.NoMatchingGraphVariantsException: No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.2.0 was found. The consumer was configured to find a library for use during runtime, compatible with ..
이제 자바에 가장 큰 특징인 객체지향에 대해 정리해보자. 객체 지향은 4개의 특징을 가지고 있다. 추상화 캡슐화 상속 다형성 객체 지향 프로그래밍은 여러 개의 독립된 단위로 본다. 즉 "객체"들의 모임으로 파악한다. 또한 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들어주어서 대규모 소프트웨어 개발에 사용된다. 즉 레고 블럭 조립하듯이 가능하다!!! 다형성(Polymorphism) 하나의 객체가 하나의 클래스에 고정된 것이 아니라, 여러 가지 타입의 객체로 취급될 수 있다는 개념. 즉 하나의 인터페이스 또는 부모 클래스를 가지고 있는 자식이 그 인터페이스나 부모의 클래스로 취급될 수 있음. 즉 자동차라는 인터페이스를 하나 만들어놓고 그 밑에 K3, 아반떼, 테슬라라는 클래스를 만들었다. ..
자바에서 abstract라는 용어를 들어본 적이 있을 것이다. 추상클래스, 추상메서드에 적용되는 용어인데 예시를 하나 들어보자. public class Animal { public void sound(){ System.out.println("동물 울음 소리"); } } 애니멀이라는 부모 클래스를 만들어놓고 자식으로 Dog라는 클래스를 만들어서 sound()를 오버라이딩 하려고 한다. public class Dog extends Animal { @Override public void sound(){ System.out.println("멍멍"); } } 근데 만약에 여기서 sound()를 실수로 오버라이딩 하지 않았다면? 부모인 Animal의 메서드인 sound()가 실행되게 된다. 이런 실수를 방지하고 A..
다형성을 직접 사용해보기 위해 동물 소리를 출력하는 예시를 살펴보자. 부모 클래스 생성 public class Animal { public void sound(){ System.out.println("동물 울음 소리"); } } 자식 클래스 생성 public class Cat extends Animal{ @Override public void sound(){ System.out.println("야옹"); } } public class Cow extends Animal{ @Override public void sound(){ System.out.println("음메"); } } public class Dog extends Animal { @Override public void sound(){ System...
Java의 특징은 객체지향. 객체지향의 특징은 추상화, 캡슐화, 상속, 다형성이 있다. 오늘은 그 중에서 다형성에 대해 알아보자. 다형성(Polymorphism) 여러 타입의 객체로 취급될 수 있는 능력을 말한다. 보통 객체는 하나의 타입으로 고정. 그런데 다형성을 사용하면 다른 타입으로도 사용이 가능하다는 뜻 다형성 참조에 대해 짚고 넘어가자. 예시로 부모와 자식의 클래스를 만들었다. public class Parent { public void parentMethod() { System.out.println("Parent.parentMethod"); } } public class Child extends Parent { public void childMethod() { System.out.println..
객체지향에서 상속이라는 개념은 매우 중요한 개념이다. 상속 : 부모(상속을 해주는) 클래스가 가지고 있는 멤버 변수와 메서드를 자식(상속을 받는) 클래스에서 그대로 사용하기 위함. 상속 받은 자식의 인스턴스를 생성하면 부모의 인스턴스도 함께 생성된다. 즉 하나의 참조값을 가리키지만, 실제로 안에는 2개의 클래스 정보가 있다. 만약에 charge()라는 메서드를 부른다고 가정해보자. 상속 관계는 부모와 자식이 모두 존재한다. 즉 부모를 통해 charge()를 찾을지, 자식을 통해서 charge()를 찾을지 정해야하는데 그건 부르는 인스턴스의 클래스로 결정이 된다.(자식으로 부르면 자식으로 찾음) 그런데 만약에 자식에 charge()라는 메서드가 없으면? 그때는 부모에서 확인한다. 만약에 부모에도 없으면 컴..
Final을 변수 앞에 붙이면 단 한 번만 값 할당이 가능하고 이후부터는 수정이 불가능해진다. 그런데 만약에 초기화를 진행할 때 Final로 계속 생성한다면? public class Car { private final int pk = 0; private String name; public Car(String name) { this.name = name; } public int getPk() { return pk; } public String getName() { return name; } } Car 클래스를 만들고 final pk를 가지는 인스턴스를 3개 만들어보고 출력해보자. public class Main { public static void main(String[] args) { Car k3 = n..
indeep
indeep한 개발자