Java(30)
-
자바 리마인드#1 변수와 자료형1
2022/12/29 학습내용 변수(variable) 프로그래밍에서 변수는 말 그대로 변하는 값을 뜻한다. 변수를 선언할 때는 int a; string b; 예시와 같이 a,b를 변수라고 한다. 변수 이름 정하기 자바에서 변수 이름은 용도에 맞게 지으면 되지만 몇가지 제약사항이 있다. 제약사항 1. 변수 이름은 영문자(대문자, 소문자)나 숫자를 사용할 수 있고, 특수 문자 중에는 $,_ 만 사용할 수 있다. 2. 변수 이름은 숫자로 시작할 수 없다. 3. 자바에서 이미 사용 중인 예약어는 사용할 수 없다. ※ 예약어 : 프로그래밍 언어에서 특별한 의미로 미리 약속되어 있는 단어를 말한다. 변수 길이에 제한이 없으므로 줄임말보다는 의미를 풀어서 쓰는 것이 좋다. ex) 학생 수 를 뜻하는 변수를 선언할 때 ..
2022.12.29 -
프로그래밍 기초탄탄#9 스레드
2022/10/31 학습내용 1.스레드 프로세스(Process) 프로그램이 실행되는 상태, 컴퓨터가 어떤 일을 하고 있는 상태를 프로세스라고 한다. 즉, 사용자가 작성한 프로그램이 os에 의해 메모리 공간을 할당받아 실행 중인 것을 말한다. 작업관리자 보면 확인 가능 지금 현재 운영체제가 프로세스 여러개를 함께 실행하고 있다. 프로세스 실행 방법 1)동시성 프로세스 하나가 이것 조금하고 저것 조금하고 이런 작업을 바꾸는것을 context switching라고 한다. 이 작업이 빨리 돌아가다보니 동시에 프로세스를 돌린다고 느껴져서 동시성이라고 한다. 2)병렬성 프로세스 하나에 코어가 여러개가 달려서 각각 동시에 작업들을 수행하는 것이다. ex) 듀얼코어, 쿼드코어, 옥타코어 이런 명칭이 붙는 멀티코어 프로..
2022.11.01 -
프로그래밍 기초탄탄#8 타입변환, 다형성, 추상클래스
2022/10/10 학습내용 1.타입 변환(type conversion)/형변환 말 그대로 java에서 하나의 타입을 다른 타입으로 바꾸는 것이다. boolean형을 제외한 나머지 기본 타입 간의 타입 변환을 자유롭게 한다. 타입 변환 종류 1) 자동 타입 변환 프로그램 실행 도중에 컴파일러가 자동적으로 타입 변환이 일어나는 것을 말한다. 작은 크기를 가지는 타입이 큰 크기를 가지는 타입에 저장될 때에만 자동 타입 변환이 진행된다. long은 8바이트, float는 4바이트인테 진행 가능하다고?? 이유는 메모리 설계상 정수 타입보다 실수 타입이 더 크게 되어 있기 때문이다. 2) 강제 타입 변환 큰 허용 범위 타입을 작은 허용 범위 탑으로 강제로 저장하는 것을 말한다. 변환시키고자 하는 데이터의 앞에 괄..
2022.10.11 -
프로그래밍 기초탄탄#7 Static, 메소드, 생성자, 인터페이스(추가 개념)
2022/10/08 학습내용 1.Static static을 사용한다는 것은 메모리에 한번 할당되면 프로그램이 종료될 때 해제되는 것이다. static 영역에 할당된 메모리는 모든 객체가 공유하는 메모리이다. static 변수는 정적 변수이며 클래스 변수다. -> 객체를 생성하지 않고도 static 자원에 접근이 가능하다. static을 앞에 지정해준 메소드라면 객체 생성을 하지 않고 사용 가능하다. 클래스 변수와 인스턴스 변수로 구분을 하는 키워드도 static이다. 인스턴스 변수에는 static이 붙지 않는다. 객체를 생성하고 값을 지정해줄 때 그 값이 변하지 않는 값이라면 static final 을 붙여준다. 2.메소드 메소드 시그니처(method signature)란 메소드의 선언부에 명시되는 매개..
2022.10.09 -
프로그래밍 기초탄탄#6 인스턴스 멤버와 정적 멤버
2022/10/03 학습내용 1.인스턴스 멤버 인스턴스 멤버는 객체마다 가지고 있는 멤버 인스턴스(객체)를 생성한 후 사용할 수 있는 필드와 메소드를 말한다. 외부 클래스에서 사용 ex) public class Car { //필드 int gas; //메소드 void setSpeed(int speed) { } Car myCar = new Car(); myCar.gas = 10; myCar.setSpeed(60); gas필드와 setSpeed() 메소드는 인스턴스 멤버이기 때문에 외부 클래스에서 사용하기 위해서는 Car 인스턴스를 생성하고 참조 변수 myCar로 접근해야 한다. 여기서 gas필드는 객체마다 따로 존재하고, setSpeed() 메소드는 메소드 영역에 저장된다. 왜 인스턴스 메소드는 객체 소속 ..
2022.10.04 -
프로그래밍 기초탄탄#5 java- ==, equals
2022/10/02 학습내용 1.==, equals 공통점 : 양쪽에 있는 내용을 비교한 값을 boolean type으로 반환한다. 1) == 연산자 (같다, 동등하다) 비교하고자 하는 대상의 주소값을 비교한다. 기본자료형 값 비교에 사용된다. 참조자료형 ==을 하면 주소값을 비교한다. 2) equals() - 메소드 비교하고자 하는 대상의 내용 자체를 비교한다. 특히 string는 객체여서 equals()로 비교해야 한다. 내부적으로는 주소값을 비교하지만 string 클래스에서는 equals() 메소드를 재정의해 내용을 비교한다. 기본 타입의 int형, char형등은 Call by Value 형태로 기본적으로 대상에 주소값을 가지지 않는 형태로 사용된다. 하지만 String은 일반적인 타입이 아니라 클..
2022.10.03