Java
-
[Java-28] 자바 method? func?Java 2020. 12. 19. 11:39
Java Method Func? 🐵 메소드 메소드 vs 함수 우리가 프로그래밍 언어를 배우면서 함수면 함수지 메소드라는 말은 많이 들어본적이 없을 거다. 또한 메소드와 함수는 엄밀히 말하면 서로 다른 의미 이므로, 이 점부터 집고 넘어가 보도록 하자. import Foundationn func length(value: String, value2 : String) -> Bool{ return value1.characters.count < value2.characterrs.count } var test = Int(readLine()!)! public class A{ int a; int b; public int sum(){ return a+b; } } 이런 코드가 있다고 가정해보자, 위에는 swift 언어로 ..
-
[Java-27] 자바 생성자에 대한 고찰Java 2020. 12. 18. 19:00
Java New Keyword 🐵 자바 생성자에대한 고찰 (this, Builder, Overload) 생성자는 이전에 설명한 new 연산자와 가이 사용하고, 객체를 생성하는 역할과 객체 초기화 역할을 한다. 생성자가 제대로 실행도지 않는다면, 객체의 주소값이 리턴도지 않을 뿐더라, 객체가 heap에 올라가지도 않을 것이다. 기본적인 생성자 기본생성자 Class() 기본적으로 생성자를 정의해주지 않는다 하더라도, Object 를 상속받은 모든 클래스들은 기본 생성자 라는걸 가지고 있다. 예를 한번 들어보자 public class App // 생성자 in Object class { A a = new A(); B b = new B(); C c = new C(); D d = new D(); E e = new ..
-
[Java-26] 자바 new & Heap, Constant poolJava 2020. 12. 14. 17:34
Java New Keyword 🐵 new 키워드 이해하기 (new Operator) 자 저번에는 우리가 어떻게 Class를 생성하고 만드는지, 그리고 클래스의 간단한 종류에 대해서 알아 보았다. 그럼 다시 간단한 클래스를 정의 해보자 public class Study{ // Study 클래스 정의 String name; } public class App{ public static class void main(String args[]){ Study study; // Study instance 생성 } } 지금 study라는 인스턴스는 여타 String, Integer 와 같이 현재 저렇게 딸랑 정의 해 놓으면 아무 상태도 아니다. 만약 저 상태에서 우리가 study를 출력하려 한다면 initialize, ..
-
[Java-25] 클래스 & 내부클래스 & 익명클래스Java 2020. 12. 9. 12:02
Java Class 🐵 Java 클래스 🙈 클래스? 어떤 객체지향 언어에서든지, 클래스라는 개념을 한번쯤은 들어봤을 것이다. 먼저 간단한 코드를 분석해보자, 자바에서 클래스를 선언 public class App { } 정말 쉽다, 이런식으로 public + class + name 다음과 같이 만들면 클래스 하나가 생성된 거다. 이제 클래스를 직접 만들어보면 애완동물 클래스인 Pet을 만들고, 여기에 변수도 넣어보자 public class Pet { String kind; // 펫의 종류 String name; // 펫 이름 Integer age; // 펫 나이 } 이렇게 만들어 놓은 클래스는 우리가 마음대로 찍어낼 수 있다, 내가 강아지를 키우고 있다면 클래스를 변수로 선언하여, 클래스에다가 마음대로 집..
-
[Java-24] junit 추가하는법, 간단 사용법Java 2020. 12. 4. 17:28
Java Junit Junit 은 자바 진영에서 단위테스트를 하는 ‘framework’중 하나이다. 첫 문장의 Junit은 자바 진영에서라고 얘기를 했듯이, unit 테스트를 여러 언어에서, 또는 환경에서 사용할 수 있다. DB단에서는 dbunit, front 단에서도 사용할 수 있는 xUnit 으로 여러가지 unit 테스트 환경이 있다. 그 중 자바에서 많은 사람들이 사용하는 Junit 사용법에 간단하게 알아보도록 하자 JAVA DEPENDENCY IDE : Intelli J Java : Java 14 OS : Mac maven 의존성 추가 maven repository 에 들어가서 junit 을 들어간다. maven repository 에는 수많은 (우리가 사용하는) 의존성을 추가할기 쉽게 검색을 해..
-
[Java-23] 자바 조건문, 반복문Java 2020. 12. 4. 17:26
Java 조건문과 반복문 조건문 If 문 if문은 java든, 아니든 코드를 작성하면서, java가 이 코드를 실행을 할지 안할지 결정할 수 있게 해주는, 프로그래밍 언어에서는 필 수적은 조건문 이라고 할 수 있다. 간단한 예를 들어보자 if(true){ //실행 되는 코드 } if(str == null) { str = "helloWorld"; } 다음과 같은 코드에서 str 변수가 정말로 null값을 가지고 있다면, 실제로 { } 안에 있는 문법이 실행이 되는 것이다. 이런 간단한 if문은 다시 if(str == null) str = "HelloWorld"; 이런식으로 { }을 작성해주지 않아도 알아서 잘 작성하는 걸 볼수 있다. else 문 if문 에서는 else 라는 keyword를 지원한다. el..
-
[Java-22] 자바13 스위치, java13 switch 연산Java 2020. 11. 27. 14:48
Java13 Switch case 이번에 다룰 switch 문법은 java 13버전의 스위치문에 대해서 다룹니다. 만약, swich 문을 모르신다면, 기본적인 문법에 대해서 보고오시면 이해가 더 편하실 겁니다. 자바13 이전의 switch case 문법 자바 13이전의 스위치문에서는 정확히 12버전 이하라고 얘기를 하자, 12에도 preview로 업뎃이 있긴 했었다. 이전의 자바에서 스위치는 어떻게 동작을 했을 까? 이런 코드의 문제점은 무엇일까? 사실 문제점이라고 하기는 그렇다. 자바가 switch case 문을 만들었을 때, C와 C++에 밀접하게 연결하여 만들었고, 이런 코드가 사실 문제가 될 건 없다고 생각한다. 적어도 아직 초보개발자인 나에게는 말이다 : ) 근데 java에서 jdk12를 내놓으..
-
[Java-21] 화살표 연산자 (->) 그리고 람다 원리Java 2020. 11. 27. 14:42
Java lambda expression 우리가 -> 를 처음보면 당황할수 밖에 없다. 기본 개념을 모르고 접근하면, 요 안에서 무슨일을 하는지 도저히 알 수가 없기 때문이다. 이 포스팅은 클래스, 인터페이스를 알고 있다는 전제하에 얘기를 한다. 만약에 클래스와 인터페이스에 대한 개념이 부족하다면, 꼭 그 부분을 보고 와야 한다. 1. 람다 이전의 자바 (함수형) Interface interface는 말그대로 껍대기로만 생각을 하자, 기본적으로 interface를 사용하면, 보통은 그 안에다가 메소드 이름과 파타미터의 타입만 정의 한다. 말 그대로 interface의 역할만 하는 것이다. 물론 static과 default 키워드를 사용하면 Interface 안에서도 메소드 구현이 가능하지만, 그 부분까지..