[java]equals
2022. 8. 26. 10:53
Developer/Java
자 이제 자바문법은 어느정도 다 알아봤습니다 근데 중요한게 이제 막 첫걸음 뗀거에요; 좌절하지 마시고 차근차근 여러가지를 알아보도록 합시다 자바에는 우리가 소스코드를 유용하게 사용할 수 있도록 도움을 주는 클래스들이 많이 아주 많이 있습니다 이 클래스들에 있는 기능들을 잘 사용하는것이 개발 잘하는 개발자 인것입니다 잘 사용한다 라는것은 적재 적소에 사용하는것 이라고 할 수 있습니다 아 이러한 업무가 있을때에 메모리를 적게 먹으며 처리속도까지 고려한다면 음 이번 업무는 이 클래스를 이용하고 이러한 로직으로 구현하면 되겠구나 이런 답이 먼저 나와야 합니다 물론 저도 아직 이렇게 나오진 않아요 그래서 아직도 공부를 하는중이죠 ㅜ 그러기 위해서는 유용한 패키지 안에 들어가있는 클래스 그안에 메서드까지 기본적인건..
[java] 제네릭
2022. 8. 25. 17:04
Developer/Java
제네릭은 아주 많이 쓰이는 문법 중 하나입니다 결론적으로 제네릭이 뭐냐하면 클래스 내부에서 사용할 타입을 내부에서 지정하지 않고 외부에서 지정하도록 하는것입니다 그렇다면 내부에서는 지정하지 않아놨겠죠?ㅎㅎ 저번에 보았던 HashMap 을 사용할때에도 굉장히 많이씁니다 거의 무조건 쓴다고 보시면 됩니다 HashMap hm = new HashMap(); 여러분들이 이클립스에서 HashMap까지 타이핑 하고 컨트롤 쉬프트를 누르면 자동완성이 되잖아요?ㅎㅎ 그럼 저런식으로 자동완성이 됩니다 ㅎㅎ 저번에 배운것 처럼 HashMap은 key val 형태로 구성 되어있어서 약어로 K , V로 자동완성이 되는겁니다 ㅎㅎ 그럼 우리 HashMap으로 한번 만들어봅시다 이 제네릭에 들어갈 수 있는 것은 기본 자료형이 아니..

[java]컬렉션즈 프레임워크
2022. 8. 22. 15:43
Developer/Java
우리가 컬렉션즈 프레임워크를 사용하는 이유는 간단해요 데이터를 자유자재로 다루기에 편하기 때문입니다 대표적인 예로 배열에 여러가지의 값을 담기에 아주 좋죠 근데 배열은 그 크기를 정해놓으면 바꿀수가 없습니다 그 크기를 넘어서면 인덱스 아웃오브 바운스 익셉션이 나올겁니다 그래서 나온것이 컬렉션즈 프레임워크에 있는 List 입니다 처음으로 알아볼것은 ArrayList입니다 public static void main(String[] args) { ArrayList data = new ArrayList(); data.add("data1"); data.add("data2"); data.add("data3"); for (int i = 0; i < data.size(); i++) { System.out.println..

[java] 예외처리
2022. 8. 18. 13:55
Developer/Java
프로그래밍을 하다보면 예기치 못하게 에러나 오류나 버그가 있을 수 있습니다 사람이라는 존재가 어디까지나 모두 다 예측 하기란 참 어려운 일이 아닐 수 없겠죠 그렇기에 예상치 못한 오류가 발생 했을 때를 위해서 사용하는 문법이 예외처리 입니다 간단한 코드를 살펴보겠습니다 public class blogTest { public static void main(String[] args) { Calcu ca = new Calcu(); //더하기 System.out.println(ca.su(10, 0)); //곱하기 System.out.println(ca.multi(10, 0)); //나누기 System.out.println(ca.div(10, 0)); } } 언뜻 보기엔 별 문제 없어보이죠 그렇지만 에러가 발생해..
[java]추상(abstract)
2022. 8. 18. 10:58
Developer/Java
추상에 대해서 알아보도록 합시다 추상 메서드라고 많이 말들을 하는데 추상 클래스도 있기 때문에 굳이 메서드라는 단어를 붙이진 않았습니다 ㅎㅎ 오늘은 처음부터 결론을 말할게요 추상 메서드를 쓰는 이유는 클래스의 상속을 강제하기 위함입니다 public class blogTest { public static void main(String[] args) { AbTest ab = new AbTest(); } } abstract class AbTest { public abstract int b(); } 이 코드는 에러가 발생하는 코드입니다 ㅎㅎ abstract 즉 추상 클래스나 메서드는 상속을 받아서 사용하는 것이므로 메인에서 처럼 인스턴스화 해서 바로 사용할 수 없습니다 자 그럼 우리가 꼭 AbTest 클래스를 ..
[java] 접근제어자
2022. 8. 16. 14:34
Developer/Java
자바 하면서 빼 놓을 수 없는 접근 제어자에 대해서 알아보도록 합시다 매서드를 선언하거나 final 키워드로 변수를 초기화 할 때 보면 앞에 public 이나 private 또는 protected 이러한 키워들 적어 주는걸 볼 수 있을겁니다 이것은 아주 중요한 접근 제어자 이므로 알고 넘어 가야합니다 우선 표로 확인해 봅시다 public protected default private 동일 패키지, 클래스 O O O O 동일 패키지, 상속 O O O X 동일 패키지, 상속 아님 O O O X 다른 패키지, 상속 O O X X 다른패키지, 상속 아님 O X X X 이 표를 기억합시다 ㅎㅎ public은 어디서나 접근 생성이 가능한 반면 private를 보면 같은 패키지와 같은 클래스 에서만 접근이 가능한걸 ..
[javascript]엑셀 다운로드 기능 구현
2022. 8. 12. 15:33
Developer/Javascript
이 기능은 다른 라이브러리 없이 구현 한 것으로 다소 허접해 보이긴 합니다 ㅎㅎ 그리고 스타일이 적용 되지 않은 소스코드로 스타일이 필요없을때 사용 하면 되겠습니다 이 전 포스팅에서 했던 페이징 기능의 list 배열 객체를 이용해서 엑셀 다운로드 기능을 만들어 보도록 하겠습니다 //다운로드 버튼 생성 다운로드 버튼을 하나 생성 해주고 download 함수를 만들어 봅시다 html 태그를 생성해서 엑셀 다운로드로 만들어 보도록 할 것이므로 변수에 html 태그를 생성합니다 function download() { let excelTable = ""; excelTable += ""; excelTable += ""; excelTable += ""; excelTable += "No"; excelTable += "..
[javascript] 페이징 처리
2022. 8. 11. 14:56
Developer/Javascript
오늘 받은 업무는 여러개의 데이터를 페이징 처리를 해라 라는 업무를 받아서 여러 페이지 서치를 통해 구현했습니다 먼저 저는 함수로 구현을 했는데 이유는 다른 페이지에서도 사용가능 하도록 하기 위함 입니다 html태그는 해드와 바디를 구분 짓기 위해 이렇게 작성 했습니다 번호 구분 수식 계산 메시지 테스트 데이터는 이렇습니다 var list = [ {no : 1, gubun: '구분자1', formula:'B', calcFrq:123123, collisMsg:'메시지'}, {no : 2, gubun: '구분자2', formula:'B', calcFrq:123123, collisMsg:'메시지'}, {no : 3, gubun: '구분자3', formula:'B', calcFrq:123123, collisMs..
[java]오버라이딩
2022. 8. 3. 15:52
Developer/Java
여러분 전 내용에서 상속을 하면 부모 클래스의 메서드 즉 기능을 물려받아 사용할 수 있다고 했는데 만약에 부모 클래스에 구현된 메서드의 기능 그대로만 사용해야 한다면 아마 그냥 다시만드는게 낫겠다 라는 생각이 들 겁니다 그래서 나온 기능이 오버라이딩 입니다 전 내용을 살펴보자 Calculator 클래스를 상속받아 내가 사용하고자 하는 메서드를 추가했는데 이 행위는 상위 클래스에 새로운 기능 즉 메서드를 추가했던 거였는데 이미 있는 기능 sum 메서드를 사용해야 하는데 그 동작 방법을 약간 수정해야 한다 아 이러면 어쩌지 할 텐데 그때 사용하는 게 오버 라이딩입니다 class Calculator { int num1 = 0; int num2 = 0; public void setNum(int num1, int..
[java]상속
2022. 8. 2. 17:36
Developer/Java
이번엔 상속입니다 여러분들이 자바라는 언어를 공부하실 때 배웠던 내용 중 하나는 재사용성이 좋다는 것입니다 상속이라는 것은 재활용을 극대화 시켰다 라고 말해도 무방 할 정도로 필수적이고 그만큼 복잡하고 어려운 부분입니다 하지만 포기하기엔 너무 많이 사용하며 이것을 모르면 이 언어를 안다고 할 수 없습니다 그 정도로 중요한 내용이기 때문에 다뤄보도록 합시다 우리가 저번에 만들었던 Calculator 클래스를 예로 들어봅시다 이 클래스를 이미 만들었죠? 그리고 우린 다른 패키지에서 이 클래스를 사용하려고 합니다 아 그런데 기능이 조금은 다르네요 나는 인스턴스 생성할 때 멤버 변수에 값을 바로 삽입해서 만들고 싶은데 아 그냥 수정해서 써야겠다 라고 생각하면 안됩니다 실제 프로젝트에서는 이 클래스를 어디에서 사..