본문 바로가기

분류 전체보기170

[Java] 패키지, 접근제어자: public, private, protected 패키지는 폴더 혹은 디렉토리와 같은 개념이다. 패키지를 하나 만들어보자. # 패키지 이름의 첫글자는 소문자로 작성해야 한다. myPack 안에 test라는 이름의 패키지 생성하자. # 생성하려고 하는 위치(패키지) 뒤에 온점 ' . '을 찍고 생성하려는 패키지의 이름을 쓰면된다. myPack 패키지 안에 test패키지가 생성된다. 만들어진 test패키지에 Member 클래스를 만들었다. package myPack.test; public class Member { String name; String num; } # 패키지가 두개이상에서 다른 폴더에서 클래스가 있으면 package 키워드로 위치가 어딘지 알려줘야 한다. # 보통은 툴이 자동으로 알려준다. 메인클래스에서 멤버클래스의 생성자를 호출해본다. pa.. 2022. 7. 4.
[Java] 생성자와 생성자의 메소드 오버로딩 클래스의 멤버변수에 데이터를 세팅하는 방법은 세가지가 있다. 다이렉트로 저장 함수로 저장 생성자를 호출할때 저장 (메모리에 영역을 확보하고 바로 멤버변수에 데이터 세팅) 여기서 생성자는 메모리의 heap 영역에 클래스를 만들면서 작업을 할수있게하는 함수다. # 메인에서 클래스를 사용할수있게 하는것 주소록 서비스를 위한 멤버데이터를 저장하는 클래스를 만들었다. public class Member { String name; String tel; String address; void print() { System.out.println("Name: "+name+" , Tel: "+tel); System.out.println("Address: "+address); } void setMember(String nam.. 2022. 7. 1.
[Java] 메소드 오버로딩(Method Overloading) 두개의 정수를 더해주는 함수들을 만들어보자 int add(int x, int y) { return x + y; } float addf(float x, float y){ return x + y; } double addd(double x, double y){ return x + y; } String adds(String x, String y){ return x + y; } # 각기 다른 데이터타입에 따라 여러 이름의 함수들을 만들었다. 메인 클래스로 함수들을 실행해보자. // 클래스로 변수만든다 (객체 생성) Add a = new Add(); int result = a.add(3, 5); System.out.println(result); // 두개의 float을 더하는 함수를 만들자 float result2.. 2022. 7. 1.
[Java] 메모리 구성과 Static 멀티프로세스 하드디스크에 있는 프로그램을 사용하려고 할때 메모리에 올린다. 그리고 이렇게 메모리에 올린 상태를 프로세스라고 한다. 컴퓨터는 메모리에 프로세스를 여러개 올리고 CPU가 여러개의 프로세스를 번갈아가며 처리하는데 매우 빠른 속도로 처리하기에 동시에 처리하는것처럼 느껴진다. 메모리는 총 4가지 영역으로 구성되어 있다. # 함수는 stack에 생긴다. # 메인에서 new로 클래스를 메모리에 올릴때 변수가 heap에 생성된다. # 그리고 stack의 함수가 heap에 있는 변수를 가리킨다. 점의 좌표를 가지고있는 클래스를 만든다. public class Point { // 클래스의 멤버변수 int x; int y; int print() { // 로컬변수 int i = 0; System.out.pri.. 2022. 7. 1.
[Java] 클래스(Class), 객체(instance, Object) 클래스는 객체들의 공통점을 찾아내서 하나의 틀로 만든것이다. 클래스 구조 # 클래스 안에있는 변수를 멤버 변수라고 한다. # 클래스 안에있는 함수를 멤버 메소드라고 한다. 이전에 함수를 만들고 호출하기전에 Func f = new Func( ) 를 먼저 작성했는데 이것이 바로 객체를 선언한것이다. # 클래스를 메모리에 올려준 상태를 객체라고 한다. 전자제품들을 나타내는 클래스를 만들어보자. # 클래스는 DB의 테이블을 만든다는 느낌으로 만들면 쉽게 만들수있다. 먼저 Product 라는 이름의 클래스를 만들어보자. public class Product { int num; String name; } 그 후, ProductMain 이라는 이름의 메인함수가 포함된 클래스를 만들자. public class Prod.. 2022. 7. 1.
[Java] 함수 자바에서의 함수생성 식의 구조를 확인해보자. # 함수타입, 함수명, 파라미터, 반환값으로 이루어져있다. # return이 없는 함수도 있는데 이때 함수타입에 void를 입력한다. 함수를 만들때는 메인함수 밖에서 만들어야 한다. public class Func { int add(int a, int b) { int result = a + b; return result; } public static void main(String[] args) { // TODO Auto-generated method stub } } # 단 클래스 안에서 만든다. new를 사용해서 함수를 호출해보자. public static void main(String[] args) { // TODO Auto-generated method s.. 2022. 7. 1.
[Java] 배열(Array), length 배열 (Array)은 데이터를 여러개 저장하는 가장 기본적인 방법이다. 메모리에 배열을 만들때는 데이터타입을 설정한 뒤 new를 사용하여 만든다. int [] arr = new int [5] ; // [] [] [] [] [] 생성됨 arr[0] = 1; arr[1] = 2; arr[2] = 3; arr[3] = 4; arr[4] = 5; // [1] [2] [3] [4] [5] 배열을 만들고 바로 한꺼번에 데이터를 넣을수도 있다. int[] arr2 = {1,2,3,4,5}; // [1] [2] [3] [4] [5] System.out.println( arr[2]); arr 배열에있는 모든데이터를 출력하자. for(int i = 0; i 2022. 7. 1.
[API] 서비스 배포 전 SQL문 Index 작업 서비스를 배포하기 전에 빠른 처리속도를 위해 SQL에서 where문에 속한 테이블과 컬럼에 Index 처리해야한다. 먼저 select, update, delete를 모두 검색해서 where가 포함된 query를 찾는다. 검색기능을 사용하여 API를 작성한 파일이 들어있는 폴더에서 select 부터 delete까지 순서대로 검색하여 확인한다. select 를 사용한 쿼리에서 where를 사용한 테이블을 찾고 그 컬럼에 인덱스 처리한다. query = '''select p.*, u.email, u.name, count(l.postingId) as likes from posting p join user u on p.userId = u.id left join likes l on p.id = l.postingId.. 2022. 6. 30.