본문 바로가기
  • developer
  • challenge

전체 글26

1to25 앱 개인정보처리방침 2024. 2. 8.
자바(Java)변수(Variable)-기본형,참조형 알아보기 1.변수(Variable) 프로그래밍에서의 변수는 데이터(Data)를 저장할 수 있는 메모리상의 공간을 의미합니다. 예) a=20 수학적 변수와 자바에서의 변수는 의미가 다른데요 먼저 수학적으로는 a는 20이다. a는 20과 같다. 라고 보지만 프로그래밍에서는 오른쪽 메모리를 왼쪽 메모리 공간에 위치시킨다. 얼핏 보면 같아 보이지만 프로그램을 하시다보면 많이 다른걸 알게 되실겁니다. 자바의 데이터 타입은 "기본형" 과 "참조형" 이며, 이 2가지를 "자료형"이라고 표현합니다. -기본형(primivite type): 보통 값에 대한 연산이 필요한 경우 사용합니다. 기본형의 개수는 총 8개 입니다. -참조형(reference type): 기본형 타입 제외한 모든 타입을 의미합니다. 기본형은 연산에 필요한 값.. 2024. 1. 22.
자바 Network TCP방식 통신을 하려면 2가지 용어를 알아야한다. 1.IP주소 - 그 컴퓨터의 고유한 주소(숫자) : 42억개 2.port번호 - 그 컴퓨터안에서 프로그램 분류번호 (6만5천개) : 0~1023까지는 사용하지 않는 것을 권장 비유) -부산항 (ip주소), 3번항구 (port번호) 통신규약 (Protocol) TCP -전화방식 TCP방식 Sever-Client-Socket통신 1.서버용 프로그램을 작성 (ServerTest) 두개의 class를 만들어서 네트워크를 연결해보는 예시를 해볼겁니다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; impo.. 2024. 1. 17.
자바 throws 예외 떠넘기기 문법 public class Main2 { public static void main(String[] args) { //throws: 예외 떠넘기기..문법 try { int x=divide(10,0); System.out.println("x : "+x); }catch(ArithmeticException e) { System.out.println("divide 메소드가 떠넘기 예외를 대신 처리해줌"); } } //두 수를 파라미터로 전달 받아 나눗셈의 결과를 리턴해주는 기능 메소드 //예외가 발생할 가능성이 있는 코드에서 try-catch문을 사용하기 어려운 상황도 있음. // static int divide(int a,int b) { // try { // return a/b; // }catch (Arithme.. 2024. 1. 15.
자바 Exception-예외처리 import java.net.MalformedURLException; import java.net.URL; import java.util.InputMismatchException; import java.util.Scanner; public class Main { public static void main(String[] args) { // 1. Error (오류) : 실행불가! // 2. Exception (예외) : 실행 중 (run time) 문제가 발생 System.out.println("예외처리에 대해 알아보기"); // 예외가 발생하는 상황 // int k = 0; // System.out.println(10/k); // 예외가 발생하면 발생한 지점 아래에 있는 코드는 모두 실행이 안됨 // 즉.. 2024. 1. 15.
자바 List,Set,Map 기능설명(3) --Map의 관한 설명(3)-- import java.util.HashMap; import java.util.Hashtable; import java.util.LinkedHashMap; import java.util.LinkedHashSet; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import java.util.TreeMap; public class MapTest { private static final int Entry = 0; public static void main (String[] args) { //Map : 키-벨류 쌍 으로 데이터를 저장하는 방식 //인덱스번호 대신에 식별자를 사용하는 방식 //Map 도.. 2024. 1. 12.
자바 List,Set,Map 기능설명(2) --Set의 관한 설명(2)-- import java.util.Set; import java.util.TreeSet; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashSet; public class SetTest { public static void main(String[] args) { //Set 계열 - 저장된 순서 x,인덱스번호 x 중복데이터 허용x //제일 중요한거는 중복 안되는것!!(보통 블루투스 사용할때 호용성이 좋음) //Set도 인터페이스 임 //Set set=new Set(); 객체 생성 불가 //Set 인터페이스를 구현한 하위 클래스들을 사용 //Set 계열 : HashSet , TreeSet.. 2024. 1. 12.
자바 List,Set,Map 기능설명(1) --List의 관한 설명(1)-- import java.util.List; import java.util.Vector; import java.beans.VetoableChangeListenerProxy; import java.util.ArrayList; import java.util.LinkedList; public class ListTest { public static void main(String[] args) { //Collection 클래스들 : 자료구조를 구현한 java API 클래스들-대량의 데이터를 관리 //배열과 차이점 //배열은 데이터를 삽입,삭제하는 것이 매우 번거로움. 그리고 개수가 미리 정해져야함. 이건 불편 //데이터의 동적추가/삭제/삽입등을 편하게 코팅할 수 있는 기능을 가진 클.. 2024. 1. 12.
자바 로또번호 출력기(2) import java.util.ArrayList; import java.util.Collections; public class Main { public static void main(String[] args) { ArrayList datas = new ArrayList(); datas.add("1"); datas.add("2"); datas.add("3"); datas.add("4"); datas.add("5"); datas.add("6"); datas.add("7"); datas.add("8"); datas.add("9"); datas.add("10"); datas.add("11"); datas.add("12"); datas.add("13"); datas.add("14"); datas.add("15").. 2024. 1. 12.
자바 로또번호 출력기(1) import java.util.Arrays; public class Main { public static void main(String[] args) { int lottery[]=new int[7]; System.out.println("=======번호======="); for (int i = 0; i 2024. 1. 12.
자바 다형성 Polymorphism,Up casting,Down casting 부모 클래스(Main) 상속 관계 클래스 (부모-자식)이라고 편하게 지칭하겠습니다. public static void main(String[] args) { -다형성을 알기 위해 먼저 Up casting,Down casting 용어부터 - First f; (참조변수)-리모컨이라고 생각 에러인 이유는 기능을 안 넣었기 때문에 - f.a=10; 실제 참조를 하든 않하든 값을 불러올수있는 리모컨이라고 생각하면된다 - f.showFirst(); First f= new First(); //제대로된 casting Second s= new Second(); //제대로된 casting -당연하게 다른 class의 캐스팅은 안되는 것이 정상임 -하지만, 만약 상속관계의 클래스라면.. First f2=new Second(.. 2024. 1. 10.
자바 파이널(final) 문법 사용법 및 주의사항 1)클래스에서 파이널 사용하는 예시 -final 클래스 더이상 상속을 않한다 public final class First { -파이널은 접근제한자 앞에 쓰는게 좋다 2)변수에 파이널 사용 및 주의사항 public class Main { public static void main(String[] args) { -지역변수에 final키워드를 붙이면 값 변경이 불가능한 변수가 됨 - 상수화가 된 변수 : final 상수 라고 부름 final int a=10; -a=20; error : a 값 변경 불가 -final 상수는 일반 변수와 구별하는 표기법을 사용할것을 권장 -모든 단어를 대문자로만 명명할 것을 권장. final int NUM=100; -두단어 이상일때는...스네이크 표기법등장!! final Stri.. 2024. 1. 10.
자바의 기초(클래스,객체,필드,메소드,변수) 객체 지향 프로그래밍 개발의 세가지 단계 1.클래스 설계 2.설계된 클래스를 가지고 사용할 객체 생성 3.생성된 객체를 이용하기 1)클래스(Class) -건물이나 제품을 만들때는 항상 도면이란게 필요합니다. 자바에서의 설계도면은 바로 클래스입니다. 클래스에는 객체를 생성하기 위한 필드와 메소드가 정의되어 있습니다. 클래스로 부터 만들어진 객체를 클래스의 인스턴스라고 합니다. 클래스에서 객체를 만드는 과정은 인스턴스화(instanctiate) 라고 하는데 하나의 클래스에서는 여러개의 객체를 만들수 있습니다. 2)객체 (Object) -객체는 클래스에 설계된 내용을 기반을 하는 속성과 기능을 가지는 요소이다. 클래스를 통해 만들어진 객체가 실제로 사용할수 있는 주제가 된다. 객체는 속성은 변수,기능을 가진것.. 2024. 1. 10.
자바-클래스(class) 4가지방법 Main-화면 class용 파일 First Mian 화면 class를 설계하는 4가지 위치 1.별도의 .java파일에 만들기 2.하나의 .java파일에 여러개의 class를 작성 3.다른 class안에 class를 설계(작성) --inner class 4.메소드(함수)안에서 class를 설계(작성)--local class 1) First f=new First(); f.a=10; //=해서 값을 넣는게 명시적 초기화 f.show(); 2) Second s= new Second(); s.a=20; s.show(); 3) 이너클래스는 외부에서 직접객체 생성이 불가능함 First.Hello h= new First.Hello(); 클래스 안에 있는 클래스는 앞에 어떤클래스 안에 있는건지 더 써줘야한다. 아웃터클래.. 2024. 1. 9.
자바문법-Constructor public class Main { public static void main(String[] args) { //person 클래스 설계도 대로 객체를 생성하기 Person p=new Person(); //객체의 값을 대입해주는 기능메소드를 이용하여 멤버값을 대입 p.setMembers("sam", 20); //객체으 멤버값을 출력하는 기능메소드를 호출 p.show(); //이렇게 기능을 만들면 또다른 객체를 만들때도 편하게 값 대입과 출력이 가능함 Person p2=new Person(); p2.setMembers("robin", 25); p2.show(); //이런식이면 객체를 생성한 후에 항상 값을 대입하는 기능메소드를 //호출하는 작업이 필요함. 이걸 생략하고 싶은것 //객체를 생성하면서 값을 대.. 2024. 1. 8.