본문 바로가기

Java40

자바 알고리즘의 캡슐화 / 템플릿 메소드 패턴 자바로 알고리즘을 구현 해야 할때 캡슐화의 개념을 사용하면 코드를 작성하는데 도움이 된다. ●캡슐화 : 관련 있는 메소드나 변수들을 하나의 클래스로 묶는 것. 예제) 만약 사람을 자바 프로그램으로 모델링 한다면 사람이 하는 행동인 잠자다 숨쉬다 밥먹다 메소드 들을 사람 클래스 안에 하나로 묶어놓는다. 사람의 키 몸무게와 같은 변수들도 사람 클래스 안에 같이 들어가게 된다. 이렇게 키, 몸무게라는 변수 잠자다 , 숨쉬다 , 밥먹다 라는 메소드 들을 사람 클래스 안에 구현하고 묶는 것을 캡슐화 라고 한다. ●템플릿 메소드 패턴 템플릿은 보통 뭔가를 계속해서 그려내거나 만들어 낼 수 있는 틀을 말한다. 템플릿 메소드 패턴 : 알고리즘의 구조를 메소드에 정의하고 하위 클래스에서 알고리즘 구조의 변경없이 알고리즘.. 2017. 9. 17.
java csv 파일 읽기 코드 / 자바 csv 파일 읽기 자바에서 csv 파일을 읽는 코드 import java.io.*; public class csvread { public static void main(String[] args) { float[][] indat = new float[2880][6]; //CSV 파일을 읽고 저장할 배열 선언 , arraylist나 벡터 등의 다른 곳에 저장해도 상관없음 try { // csv 데이터 파일 File csv = new File("C:\\폴더 1\\폴더 2\\파일이름.csv"); BufferedReader br = new BufferedReader(new FileReader(csv)); String line = ""; int row =0 ,i; while ((line = br.readLine()) != null).. 2017. 9. 17.
자바 벡터 Vector() 클래스 , Vector 사용하는 방법 자바에서 배열은 길이가 고정되어 있습니다. 따라서 배열이 한 번 생성되면 배열의 길이를 증가 시키거나 감소 시킬 수 없습니다. 프로그램 내에서 사용할 배열의 크기를 미리 예측하는 것은 쉽지 않습니다. 자바에서는 동적인 길이로 여러 데이터 형을 저장하기 위해서 Vector 클래스를 제공합니다. Vetor는 가변길이 배열이라고 생각하시면 됩니다. Vector class 는 Arraylist와 생김새가 유사하다. 설명이 부족한 부분은 없으셨나요? 댓글이나 이메일로 질문해주시면 답변 드리겠습니다. 감사합니다. 이메일 : forsqna@gmail.com 2017. 9. 17.
Dat 파일 Dat = 데이터 파일 , 시스템 운영에 필요한 데이터를 저장하는 용도로 주로 사용된다. 주요 Dat 파일의 예시 : Windows 98 설치시 Windows 95의 데이터를 백업하는 Winundo.dat , 사용자 정보를 담는 user.dat , IE userdata.dat 등이 있다. 비디오 데이터 파일들이 Dat 확장자를 사용하기도 한다. Dat파일을 메모장으로 열었을 때 Dat 파일을 CSV 파일로 바꾸고 열었을 때 파일의 내용은 바뀌지 않으며 동일하다. 2017. 9. 17.
Call by Value / Call by Reference Call by value 값을 복사해서 함수에 전달한다. 그러므로 main의 변수 값이 바뀌지 않는다. Call by reference 함수에 주소를 전달한다. 그러므로 main의 변수 값이 바뀐다. 자바는 call by value를 지원한다. 하지만 자바는 변수의 타입 중에 참조 타입이 있다. 참조 타입 변수에는 객체의 주소가 저장이 된다. Call by value 가 맞으나 주소 값을 복사해서 전달하기 때문에 call by reference 인 것처럼 보인다. 2017. 9. 17.