java 특징

  • 자바는 각 OS마다 프로그램이 똑같이 동작할 수 있도록 OS와 프로그램 사이에 가상머신을 개발함
  • JDK(Java Development Kit) : 자바에서 제공되는 개발용 라이브러리. 계속 버젼이 올라가고 있음
  • JRE(Java Runtime Environment) : 자바 프로그램이 실행되는 환경. 8.0까지 무료로 제공 됨
  • JVM(Java Virtual Machine) : 자바 가상 머신으로 프로그램이 실행되는 환경인 JRE 가 설치되어 있어야 함

eclipse 단축키

  • Home-> 줄의 맨 앞으로 감
  • Shift누르면서 end 누르면 한줄 전체 선택
  • shift 누르면서 커서 누르면 누른곳까지 선택
  • ctrl+d ->한 줄삭제
  • ctrl+ space-> 자동완성 보기
  • f11-> 디버깅 시작
  • f6-> 한줄씩 디버깅

문자 vs 문자열

• char 로 선언하고 숫자리터럴 대입해도 print하면 문자로 나옴
• \u치고 유니코드 치면 코드값에 해당하는 문자 나옴
	ex) char han='\uD55C'; 치면 한 출력
• java 10부터 자료형 명시 필요X(only in 지역변수)
• 상수선언: final int MAX_NUM=10000;
	->재선언 불가
• 몫: / 
	○ double로 타입 선언하면 10/4=2.5
	○ int면 2나옴
• 나머지: %
• 논리연산자
	○ && (논리곱) ->둘다 참이어야 참
	○ || (논리합) ->하나라도 참이면 참

두 항이 있을 때 첫번째 항으로 결과가 결정날 경우 뒤의 항을 아예 실행을 안함-> 만약 뒤의 항에서 변수 값을 바꾸는 행위가 있어도 그냥 그대로임

• 지수표기법
	○ 0.24=2.4*10-2=2.4e-2
• 비트 연산자
	○ & : and : 둘다 1일때 1반환, 나머지는 0
	○ | : or : 하나라도 1이면 1반환, 둘다 0이면 0
	○ ^ : xor : 두 비트가 서로 다르면 1 반환
• for(  ;  ;  ) -> 무한반복
• 객체 지향 프로그래밍 하는 방법
	○ 객체 정의
	○ 각 객체의 속성을 멤버 변수로, 역할을 메서드로 구현
	○ 각 객체간의 협력 구현

•  객체 : 객체 지향 프로그램의 대상, 생성된 인스턴스    
• 클래스 : 객체를 프로그래밍 하기위해 코드로 정의해 놓은 상태    인스턴스 : new 를 사용하여 클래스를 메모리에 생성한 상태    
• 멤버 변수 : 클래스의 속성, 특성   
• 메서드 : 멤버 변수를 이용하여 클래스의 기능을 구현한 함수    
• 참조 변수 : 메모리에 생성된 인스턴스를 가리키는 변수    
참조 값 : 생성된 인스턴스의 메모리 주소 값![](https://velog.velcdn.com/images/imageimage/post/0fb269ee-1d02-4cb6-9d92-b51170cc57c8/image.png)


• char=2byte
• 참조 자료형으로 멤버 변수를 쓰는 경우 대부분 생성자에서 많이 생성.(강의 2-9 참조)
유일하게 new없이도 객체를 생성할 수 있는 참조 자료형은 String
기본 생성자는 이미 생성자가 선언되어있으면 생성되지 않는다.

• string 자료형
String str1 = "hello"
String str2 = "hello"
String str3 = new String("hello");
String str4 = new String("hello");
	○ 상수영역에 hello라는 인스턴스가 생성되고 str1과 str2는 같은 인스턴스를 참조하고(가리키고)있다
	○ new로 생성한 인스턴스는 무조건 새로 만들어진다. str3과 str4는 서로 다른 인스턴스를 참조한다.
	
	str1 == str2 의 결과는 true문이다.
	str3 == str4 의 결과는 false
	
	
• this 용법
	this.멤버변수 : 매개 변수와 객체 자신이 가지고 있는 변수의 이름이 같은 겨우 이를 구분하기 위해 this 를 붙인다.
	
	this(매개변수) : 생성자 내에서 다른 생성자를 호출한다.
	
	
• this 로 오버로딩된 다른 생성자 호출하기
	○ 인자가 여러개인 생성자가 있을 때, 인자가 적은(없는) 생성자를 만들고 싶으면 this(name,weight, 0) 이런식으로 기본값을 설정하는 용도로 쓸 수 있다.


	
• builder pattern 에서 return this 를 하면 main에서 객체 생성할 때 .함수명으로 체인을 이어갈 수있다.

0개의 댓글