반응형

자바 43

for문과 foreach문은 어떨 때 쓰면 좋을까

public class Byungjun { // getMembers 메서드: 멤버 이름을 담은 배열을 반환 public static String[] getMembers() { String[] members = {"병준", "성호", "민수" }; return members; } public static void main(String[] args) { // getMembers 메서드 호출하여 멤버 이름 배열 획득 String[] members = getMembers(); } } 클래스 정의 후 getMembers()는 String 배열을 반환하는 static(정적) 메서드이다. 하드코딩된 멤버 이름들을 배열로 생성하고 반환한다. String[] members = getMembers(); getMembers..

활동/호기심 2023.09.01

아니 자바에서 static이 도대체 뭔데 (클래스와 메소드)

class Foo { public static String classVar = "I class var"; // 정상 public String instanceVar = "I instance var"; // Error } public class StaticApp { public static void main(String[] args) { System.out.println(Foo.classVar); // 정상 System.out.println(Foo.instanceVar); // Error } } 클래스를 통해서 클래스 변수에 접근이 가능하지만, 인스턴스는 인스턴스를 통해 사용해야하므로 에러가 발생한다. 다음은 static 메소드와 instance 메소드를 만드는 예시이다. static을 사용하면 객체를 생성..

활동/호기심 2023.08.29

[8월] 느슨해진 2023년에 긴장감을 주는 남은 올해는 어떻게 살 것인가

2022년에 교육을 함께 들었던 동기이자 동생인 승원이와 많은 대화를 나눈다. 항상 생각해보고 공부해보라면서 던져주는 고민거리들이 나를 더욱 성장하게 만들어준다. 2023년 6월 19일부터 8월 11일까지 나는 청담동에 위치한 한 프로젝트에 투입되었다. 개발 단계가 아닌 테스트 및 메뉴얼을 작성하는 역할로 투입되었지만, 내 인생의 첫 프로젝트이자 동기 17명 중 첫번째로 선발되어 나간 것에 대해 '비전공자인 내가 쓸모없진 않구나' 라며 혼자 속으로 의미를 부여했었다. 마감기한도 너무 타이트하고 고객의 잦은 요구사항 변동 때문에 야근이 잦았다. 오죽하면 퇴근시간보다 30분이나 늦게 퇴근했음에도 불구하고 '오늘은 칼퇴했다' 라고 생각이 들 정도였으니 그만큼 찌들어.. 아니 열심히 살았던 것 같다. 철수일자가..

활동/회고 2023.08.29

[Do it! 점프 투 자바] 05. 객체 지향 프로그래밍 (객체 변수)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 05장 객체 지향 프로그래밍 자바는 객체 지향(object oriented) 프로그래밍 언어이다. 객체 지향에는 클래스, 객체, 인스턴스, 상속, 인터페이스, 다형성, 추상화 등의 많은 개념들이 존재한다. … wikidocs.net 객체 지향 프로그래밍 계산기에 ① '3' 입력 ② '+' 기호 입력 ③ '5'입력 순서대로 입력하면 결괏값 8이 나올 것이다. 이 말은 즉슨, 계산기는 이전에 계산한 결괏값을 항상 메모리 어딘..

활동/독서 2023.08.28

자바 for문을 이용한 '공포의 별 찍기 문제'

학습 기록을 시작하기 앞서, 나는 뛰어난 개발자는 아니지만 꾸준한? 아니 끈질긴 개발자라는 문득 생각 들었다. 이해 안된다고 그냥 넘어갔던 별 찍기 문제를 기어코 다시 마주했고 '이걸 이제와서 또 하네.. 진작 해볼걸' 같은 한심한 생각도 들었지만 그래도 피하지 않고 포기하지 않고 이해하려고 또 덤벼든 나 자신에게 오늘의 칭찬과 보상을 주기로 했다. ( TMI : 저녁에 낙성대입구에 고등어회 먹으러 갈 예정) 자바를 초창기에 공부하면서 옆자리에 앉은 전공자에게 어떻게 하면 잘할 수 있냐 물으니 돌아왔던 대답은 '무조건 찍어보지만 말고 일단 먼저 생각해보라는 것'이었는데 그 말이 이제는 공감되는 것 같다. 2차원 배열 별 찍기 for(int i=0;i

활동/호기심 2023.08.25

[Do it! 점프 투 자바] 04. 제어문 이해하기 (while / for문과 for each문)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 04장 제어문 이해하기 제어문을 이해하기 전에 집을 짓는 경우를 생각해 보자. 돌, 시멘트 등은 집을 짓기 위한 재료가 될 것이고, 나무나 철근 등은 집의 뼈대가 될 것이다. 프로그램도 집을 짓는 것과… wikidocs.net while 문 열 번 찍어 안 넘어가는 나무 없다 int treeHit = 0; while (treeHit < 10) { treeHit++; // threeHit += 1 로도 표현 가능 Syste..

활동/독서 2023.08.24

[Do it! 점프 투 자바] 03.자바의 기초 - 자료형 (형 변환과 final)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 03-11 형 변환과 final 앞서 자바에서 사용하는 주요 자료형을 배웠다면 이제는 자바의 형 변환 과 final에 대해 알아보자. 형 변환이란 자료형을 다른 자료형으로 바꾸는 것이다. 예를 들어 123과… wikidocs.net 형 변환 public static void main(String[] args) { String num = "12345"; int n = Integer.parseInt(num); // 문자열을 ..

활동/독서 2023.08.23

String.valueOf()와 Integer.toString() 차이점은 Null 값 처리

03-11 형 변환과 final 앞서 자바에서 사용하는 주요 자료형을 배웠다면 이제는 자바의 형 변환 과 final에 대해 알아보자. 형 변환이란 자료형을 다른 자료형으로 바꾸는 것이다. 예를 들어 123과… wikidocs.net int number = 42; // Using String.valueOf() String stringValue = String.valueOf(number); // "42" (string) // Using Integer.toString() String intValue = Integer.toString(number); // "42" (string) String.valueOf()와 Integer.toString() 둘 다 정수 값을 문자열로 반환하는 메서드인데 차이점이 무엇인지 궁..

활동/호기심 2023.08.23

[Java] HashMap과 HashSet 차이점

한눈에 보는 차이점 HashMap HashSet 정의 Map Interface 구현체 Set Interface 구현체 데이터 삽입 put() (key-value 형태의 한 쌍의 데이터를 저장) add() 데이터 저장 key-value 형태로 데이터를 저장 key 값으로 삽입되는 객체 자체를 저장 (속도가 느림) 중복 허용 중복 key X , 중복 value O (객체 자체를 저장하기 때문에) 데이터 중복 X null 값 key는 단 하나만 허용 / value는 중복 null 허용 단 하나의 null 값만 허용

공부/Java 2023.08.21

[Do it! 점프 투 자바] 03.자바의 기초 - 자료형 (HashMap의 Key, Value / enum 장점과 예시)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 03-08 맵 사람을 ‘이름 = 홍길동’, ‘생일 = 몇 월 며칠’ 등으로 구분할 수 있듯이 맵(Map) 은 대응 관계를 쉽게 표현할 수 있게 해주는 자료형이다. > 맵은 다른 언어에도 있는… wikidocs.net 맵 맵은 리스트나 배열처럼 순차적으로(Sequential) 요솟값을 구하지 않고 키(key)를 이용해 값(value)을 얻는다. put key와 value를 추가한다. get key에 해당하는 value를 얻..

활동/독서 2023.08.21

자바 제네릭(Generic) 정의와 사용하는 이유 정리

Generic Types (The Java™ Tutorials > Learning the Java Language > Generics (Updated)) The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See Java Language Changes for a summary of updated docs.oracle.com 제네릭(Generic) 클래스 내부에서 사용할 데이터 타입을 외부에서 ..

활동/호기심 2023.08.21

[Do it! 점프 투 자바] 03.자바의 기초 - 자료형 (증감연산 / Wrapper 클래스 / StringBuffer / List)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 03장 자바의 기초 - 자료형 자료형(data type)이란 데이터의 종류와 크기를 결정하는 기본 구성 요소로 숫자, 문자열처럼 자료 형태로 사용하는 모든 것을 뜻한다. 프로그램에서 가장 기본적이면서 핵심 단… wikidocs.net 증감 연산 ++, -- 기호를 이용하여 값을 증가 또는 감소시킬 수 있는데 증감 연산자라고 한다. System.out.println(i++); 결과로 1이 아닌 0이 출력되었다. 그 이유는 ..

활동/독서 2023.08.18

[Do it! 점프 투 자바] 02.자바 시작하기 (변수와 자료형 / 이름 짓는 규칙 / 주석)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 11-02 public 클래스 여기서는 클래스를 작성할 때 약간 혼란스러울 수 있는 부분을 설명하려고 한다. class와 public class의 차이점에 대해서 알아보자. 다음과 같은 클래스 파일을 MyP… wikidocs.net 자바 코드의 가장 바깥쪽 영역은 클래스 블록으로 사용자가 마음대로 이름을 지을 수 있다. 단, 클래스명은 소스 파일의 이름과 똑같이 사용해야 한다. ex) 클래스명.java public cla..

활동/독서 2023.08.18

[Do it! 점프 투 자바] 01.자바란 무엇인가? (개발환경 셋팅 / Main 메서드)

* 본 게시물은 이지스퍼블리싱 [Do it! 점프 투 자바] 서평단 미션 수행 및 학습 목적으로 작성하였습니다. 모든 내용, 디자인, 이미지, 편집 구성의 저작권은 이지스퍼블리싱(주)와 지은이에게 있으며 학습 목적으로 내용을 재구성하여 작성했음을 밝힙니다. 문제시 삭제하도록 하겠습니다. 01장 자바란 무엇인가? 이번 장에서는 자바를 간단히 소개한 뒤 설치 방법과 실행 방법을 알아보고 간단한 프로그램도 만들어 볼 것이다. 이 장의 목표는 여러분에게 자바로 프로그래밍하는 전체 과정을 대략 … wikidocs.net [Java] 운영체제별 JDK 설치 (Open JDK/Oracle JDK 사이트) 자바 프로그램을 개발하고 실행하기 위해서는 먼저 Java SE(standard Edition) 구현체인 JDK(J..

활동/독서 2023.08.17

Java 기반의 시큐어 코딩 교육 (SQL Injection / 암호화 알고리즘 / 크로스 사이트 스크립팅(Cross Site Scripting) XSS)

해당 게시물은 [자바 기반의 시큐어 코딩] 교육 내용을 기반으로 학습 및 기록 목적으로 제작되었습니다. [목차를 클릭하면 해당 위치로 바로 이동] 소프트웨어 개발 보안 방법론 시큐어 코딩기법(SQL Injection) XSS 정보보안 신원증명과 인증 / 암호화 / 권한 부여 / 무결성 / 부인 방지 웹 애플리케이션 Web 기반 시스템을 CS와 다르게 인터넷 상으로 접근 가능한 위치에 존재하게 되어 항상 위험에 노출 (Web 기반 시스템의 보안 필요성 강조) OWASP (Open Web Application Security Project) 오픈소스 웹 애플리케이션 보안 프로젝트 OWASP - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. OWASP(The Open Web Applicat..

교육 2023.04.25
반응형