본문 바로가기

# 02/Java

[윤성우 열혈자바] 14-1. 상속의 기본 문법 이해 상속은 코드의 재활용을 위한 문법이 아닌 연관된 일련의 클래스들에 대해 공통적인 규약을 정의하는 것 입니다. 상속과 생성자1 class Man {String name; public Man( String name ) {this.name = name;} public void tellYourName() {System.out.println( "My name is " + name );}} class BusinessMan extends Man {String company;String position; public BusinessMan( String company, String position ) {this.company = company;this.position = position;} public void tell..
[윤성우 열혈자바] 13-2. enhanced for문 enhanced for문 ( for-each문 )의 이해 코드의 특징 : 배열 요소의 순차적 접근 int[] ar = {1, 2, 3, 4, 5}; for( int i = 0; i < ar.length; i++ ) {System.out.println( ar[i] );} 위 유형의 코드는 for-each 문으로 다음과 같이 구성 가능 int[] ar = {1, 2, 3, 4, 5}; for( int e : ar ) {System.out.println( e );} 코드의 양이 줄고 배열의 길이와 요소에 신경 쓸 필요 없다.
[윤성우 열혈자바] 13-1. 1차원 배열의 이해와 활용 배열은 인스턴스임!! 배열 요소는 반복문을 통해 순차적 접근이 가능하며, 이것은 배열이 가진 큰 장점 중 하나이다. 배열을 생성과 동시에 초기화 // 배열 생성int[] arr = new int[3]; // 배열 생성 및 초기화1int[] arr = new int[] { 1, 2, 3 }; // 배열 생성 및 초기화2int[] arr = { 1, 2, 3 }; // 배열 대상 참조변수 선언의 두 가지 방법int[] ar = new int[3]; // 조금 더 선호하는 방법int ar[] = new int[3]; 배열의 디폴트 초기화 기본 자료형 배열은 모든 요소 0으로 초기화 int[] ar = new int[10]; 인스턴스 배열(참조변수 배열)은 모든 요소 null로 초기화 String[] ar = ..
[윤성우 열혈자바] 12-2. 콘솔 입력 Scanner 클래스 public static void main(String[] args) {String source = "1 3 5"; Scanner sc = new Scanner(source); // Scanner 인스턴스 생성int num1 = sc.nextInt(); // int 형 데이터 추출int num2 = sc.nextInt(); // int 형 데이터 추출int num3 = sc.nextInt(); // int 형 데이터 추출 int sum = num1 + num2 + num3;System.out.printf ( "%d + %d + %d = %d \n", num1, num2, num3, sum );} Scanner 클래스의 인스턴스 생성은 데이터를 뽑아 올 대상과의 연결을 의미한다. 연결..
[윤성우 열혈자바] 12-1. 콘솔 출력 toString 메소드 class Box {private String conts; Box ( String cont ) {this.conts = cont;} public String toString() {return conts; // 문자열 반환}} public static void main ( String[] args ) {StringBuilder stb = new StringBuilder ( "12" );stb.append(34);System.out.println( stb.toString() );System.out.println( stb ); Box box = new Box ("Camera");System.out.println( box.toString() );System.out.println( box ..
[Java] String과 StringBuffer, StringBuilder의 차이점 자바에서 String과 StringBuffer, StringBuilder의 차이점을 알아본다.이들의 공통점은 모두다 String(문자열)을 저장하고 관리하는 클래스들이다.어떤 차이점이 있을까?String과 (StringBuffer, StringBuilder)의 차이점은 String은 immutable(불변)하고 StringBuffer, StringBuilder는 mutable(가변)하다는 점이다.쉽게 말해서 String은 new 연산을 통해 생성되면 그 인스턴스의 메모리 공간은 절대 변하지 않는다.그래서 + 연산이나 concat을 이용해서 문자열에 변화를 줘도 메모리 공간이 변하는 것이 아니라 새로운 String객체를 new로 만들어서 새로운 메모리 공간을 만드는 것이다.이렇게 새로운 문자열이 만들어지면..
[윤성우의 열혈자바] 11-3. String 클래스의 메소드 "ABC".length(); -> "ABC"에 해당하는 인스턴스가 먼저 생성되고 참조값이 반환된 다음 그 참조값을 기반으로 인스턴스에 접근하여 length 메소드 호출하는 방식임!! 문자열 연결시키기 class StringConcat {public static void main( String[] args ) {String st1 = "Coffee";String st2 = "Bread"; String st3 = st1.concat(st2);System.out.println(st3); String st4 = "Fresh".concat(st3); System.out.println(st4);}} 문자열의 일부 추출 String str = "abcdefg"; str.substring(2); // 인덱스 2 이후의..
[윤성우의 열혈자바] 11-2. String 클래스 String 인스턴스 생성의 두 가지 방법 String str1 = new String ( "Simple String" ); String str2 = "The Best String"; 둘 다 String 인스턴스의 생성으로 이어지고 그 결과 인스턴스의 참조 값이 반환된다. String 인스턴스와 println 메소드 System.out.println ( "Funny String" ); System.out.println( String str ) { ... } -> 일단 "Funny String" 이라는 String 인스턴스가 생성되고 참조값을 메소드로 전달하는 것임!!str 은 전달받은 String 인스턴스의 참조값을 가르키게 됨! 문자열 생성 방법 두 가지의 차이점 class ImmutableString..