[java] 클래스 활용
·
JAVA
🔎클래스 사용 전 함수 사용 public static int add(int a, int b) { int r = a + b; return r; } public static void changeUpper(String name) { name = name.toUpperCase(); } public static void swap(int c, int d) { int t = c; //지역변수 t라서 swap의 기능이 제대로 안된다. c = d; d = t; System.out.println("c=" + c + ",d=" + d); }이때 스택은 각 함수마다 따로 있으며 리턴문은 변수 하나만 리턴할 수 있다.c=5d=8swap 메서드에서는 이렇게 swap이 된 상태로 나온다.  public static ..
[java]접근제어자
·
JAVA
Java 접근 제어자에 대한 이해Java는 객체 지향 프로그래밍 언어로, 코드의 캡슐화와 보안을 강화하기 위해 접근 제어자를 제공합니다. 접근 제어자는 클래스, 메서드, 변수 등의 접근 수준을 설정하여, 코드의 구조와 가독성을 높이는 데 기여합니다. 이번 포스트에서는 Java의 네 가지 접근 제어자에 대해 자세히 알아보겠습니다.1. public설명: public 접근 제어자가 붙은 클래스, 메서드, 변수는 모든 클래스에서 접근할 수 있습니다. 제한이 없기 때문에, 어떤 패키지에서도 사용 가능합니다. 사용 예: API를 제공하는 클래스나, 외부에서 접근이 필요한 메서드에 적합합니다.public class Example { public void display() { System.out.pr..
[java]InetAddress(컴퓨터 주소 찾기), InetSocketAddress(단방향 채팅프로그램)=>TCP통신
·
JAVA
20240826수업InetAddressIP 주소를 다루기 위한 클래스. 주로 네트워크 프로그래밍에서 사용 명령 프롬프트 앱을 열어서 ipconfig/all을 입력하면 무선 LAN 어댑터 Wi-Fi에서 mac주소(물리적 주소)와 ip내부주소(IPv4 주소,본인 컴퓨터)를 알 수 있다. 인터넷 주소:192.168.0.9local : 나remote:상대방host:컴퓨터server:서버-자료를 제공하는 컴client:클라이언트-자료를 요청하는 컴import java.net.InetAddress; import java.net.UnknownHostException;public class InetAddressTest { public static void main(String[] args) { try { //wi..
[java]Thread(스레드)
·
JAVA
20240823수업스레드(Thread)프로그램 내에서 동시에 실행될 수 있는 실행단위  프로그램의 실행 흐름을 나타내며, 여러 스레드를 통해 동시에 여러 작업을 수행할 수 있음(멀티스레드).  이를 통해 CPU의 자원을 효율적으로 사용할 수 있으며, 사용자 경험을 개선할 수 있음.for (int i = 0; i 5; i++) { System.out.println("탕"); Thread.sleep(500); //0.5초만큼 기다렸다가 실행 | 1000: 1s, 1000>1000ms }//글자만  Toolkit toolkit=Toolkit.getDefaultToolkit(); for (int i = 0; i 5; i++) { toolkit.beep(); Thread.sleep(500); }//소리만for문만..
[java] 외부파일을 읽어서 출력하기(FileReader,BufferedReader,FileWriter,BufferedWriter)
·
JAVA
20240823수업data2.txt 파일을 읽어서 화면에 출력FileReader기본적인 파일 읽기: FileReader는 문자 기반의 파일을 읽기 위한 클래스. 파일의 내용을 문자 단위로 읽어옴.사용 용도: 파일을 열고, 문자 데이터를 읽는 데 사용됨. 주로 간단한 파일 읽기 작업에 적합함.성능: 직접적으로 파일에서 문자를 읽기 때문에, 한 번에 한 문자씩 읽는 경우에는 성능이 좋지 않을 수 있음.BufferedReader버퍼링된 읽기: BufferedReader는 입력 스트림에서 데이터를 읽을 때 성능을 개선하기 위한 버퍼를 사용함. 내부적으로 일정 크기의 버퍼를 두고, 이 버퍼에 데이터를 먼저 읽어온 후 사용자가 요청할 때마다 버퍼에서 데이터를 제공함.사용 용도: 대량의 데이터나 긴 파일을 읽을 때 ..
[java]Collection Framework
·
JAVA
20240822수업Collection Framework:데이터를 효율적으로 저장하고 그룹화 및 처리할 있는 인터페이스와 클래스 모음Collection:객체를 수집해 저장하는 것Set과 List는 인터페이스이며 자바에서 인터페이스는 구현 클래스 없이 직접 인스턴스화할 수 없다.인터페이스를 직접 사용할 수 없는 이유는 객체의 생성 방식이 인터페이스와 클래스의 차이 때문List계열순서를 유지하고 저장중복된 주소와 값 저장 가능구현 클래스:ArrayList, Vecctor, LinkedListString[]names=new String [5];  names[0]="가나"; names[1]="나다"; names[2]="다라"; names[3]="라나"; names[4]="사나";  for (int i = 0; i..
[java]class에 모든 기능을 구현해서 출력
·
JAVA
20240821수업제품 정보를 입력받고 결과값을 출력하는 코드인터페이스와 클래스 정의interface Ipo { void input(); void process(); void output(); }class Product { private int num; private String pcode; private double amount; private double price; private String pname; private double charge; // 생성자 public Product() {} public Product(int num, String pcode, double amount, double price) { this...
[java]정렬하기(Sort), 람다식
·
JAVA
20240820수업정렬:Sorting오름차순 정렬:Ascending 1234, ABCD, 가나다라 순, 선동률 순, 방어율 순내림차순 정렬:Descending 9876, DCBA, ..., 타율, 홈런순, 승수Array정렬①Array.sort()int [] nums = {8, 5, 4, 7, 1};//초기값 설정  System.out.println("1."); System.out.println(Arrays.toString(nums)); Arrays.sort(nums); //오름차순 정렬 System.out.println(Arrays.toString(nums));Arrays.sort(nums, Collections.reverseOrder());  =>error∵int[] 배열은 reverseOrder할수가..
[java] action , abstract, interface
·
JAVA
20240819수업abstract class함수 안의 코드가 없는 클래스 =>기능 無(↔concrete class:함수 안에 코드가 있는 클래스(구상클래스,일반클래스))abstract class Pet{ String name; void eat() { System.out.println(name+"(이)가 사료를 먹습니다."); } abstract void sound();}abstract메소드가 있으므로 class앞에 abstract를 붙여야한다.(abstract 필드나 클래스가 존재할때도 마찬가지)main의 eat과 sound만 접근가능 class Dog extends Pet{ void keeping() { System.out.println(name+"(이)가 집을 지킨다"); } @Override v..
[java]객체 개념
·
JAVA
20240819수업클래스(class), 객체(Object), 인스턴스Instance의 개념클래스:객체를 만드는 데 사용하는 설계도,연관되어 있는 변수와 메서드의 집합객체소프트웨어 세계에 구현할 대상클래스의 인스턴스(instance)객체는 모든 인스턴스를 대표하는 포괄적인 의미인스턴스소프트웨어 세계에 구현된 구체적인 실체객체를 소프트웨어에 실체화한 것원시타입의 인스턴스를 칭할때는 값이라고 부르기도 한다. 모든 객체는 어떤 클래스의 인스턴스객체는 ‘실체’, 인스턴스는 ‘관계’에 초점을 맞춘다. Dog 라는 클래스는 name 이라는 상태(state)값을 갖는다. 또한 eat과 bark라는 행위(behavior)를 갖는다. 여기에 새로운 인스턴스를 만들 수 있는 생성자도 있다. 메인프로그램에서 이 클래스를 인스..