ToBe끝판왕

[ JAVA ] java.lang 패키지( Object 클래스 , String 클래스 ) 본문

■ Programming Skills/JAVA

[ JAVA ] java.lang 패키지( Object 클래스 , String 클래스 )

업그레이드중 2022. 5. 25. 17:25
반응형

 


 

java.lang 패키지

 

•  JAVA 프로그래밍에 필요한 가장 기본적인 클래스들이 모여있는 패키지

•  java.lang 패키지의 클래스는 import를 하지 않아도 사용이 가능하다.

•  java.lnag 패키지에 포함되어 있는 클래스는 따로 명시하지 않아도 취상위 클래스가 된다.

 

•  참고페이지

java.lang (Java SE 11 & JDK 11 ) (oracle.com)

 

java.lang (Java SE 11 & JDK 11 )

Provides classes that are fundamental to the design of the Java programming language. The most important classes are Object, which is the root of the class hierarchy, and Class, instances of which represent classes at run time. Frequently it is necessary t

docs.oracle.com

 

•  Java.lang 패키지 주요 클래스

 


 

Object 클래스

 

•  가장 많이 사용되는 클래스

•  모든 Java 클래스의 최상위 클래스

•  Java 의 모든 클래스는 Object 크래스의 모든 메서드를 바로 사용할 수 있다.

•  필드를 가지지 않고 총 11개의 메서드만으로 구성되어 있다.

 

 

▶  Object 클래스 생성

Object( )

 

 

▶  Object 클래스 메서드

 

1) equals( )

•  주소를 비교할 때는 비교연산자

•  내용을 비교할때는 equals( ) 메서드 사용

Object obj1 = new Object();
Object obj2 = new Object();

boolean result = obj1.equals( obj2 );

 

2) toString( )

•  객체의 문자 정보를 리턴 ( 문자정보란, 객체를 문자열로 표현한 값 )

•  Object 객체를 만들어서 toString( ) 메서드를 출력하면 단순히 객체 참조값 출력

•  String 객체를 만들어서 toString( ) 메서드를 사용하면 해당 문자열이 출력

   ( String 클래스에서 Object클래스의 toString( ) 메서드를 재정의 )

public class Study {

	public static void main( String[] args ) {
    
    	Object obj = new Object();
        
        //  객체 참조값
        System.out.println( obj );
        
        // 객체 참조값 문자열로 출력
        System.out.println( obj.toString() );
        
        // String 객체 만들고 toString()을 사용
        String str = new String( "Hello" );
        System.out.println( str.toString() );
    }
}

결과값

 

3) hashCode( )

•  객체의 메모리주소를 16진수로 표현한다.

•  equal( ) 메서드를 오버라이딩 하면 hashCode( ) 메서드로 오버리아딩 해야한다.

 

4) getClass( )

•  객체의 Class 객체를 반환한다.

•  객체의 클래스의 필드 , 메서드 , 어노테이션 등의 정보를 이용할 수 있다.

public class Study {

	public static void main( String[] args ) {
    	
            Object obj = new Object();

            System.out.println( obj );

            // 클래스 이름 알고싶을 때
            System.out.println( obj.getClass().getName() );

            // hashCode() 참조값을 10진법으로 출력
            System.out.println( obj.hashCode() );
    
    }
}

결과값

 


 

String 클래스

 

String 인스턴스는 한번 생성되면 그 값을 읽기만 가능하고 변경은 불가능하다. ( 불변 객체 )

 

 

▶  String 클래스 생성

public class Study {

	public static void main( String[] args ) {
    	
        String str1 = "Hello";
        String str2 = new String( "Hello" );
        
        System.out.println( str1 );
        System.out.println( str2 );

    }
}

결과값

 

 

▶  String 클래스 메서드

public class Study {

	public static void main( String[] args ) {
    	
        String str1 = "Hello World";
        
        // 문자열의 길이를 반환하는 legth() 메서드
        System.out.println( str1.length() );
        System.out.println( "Hello World".length() );
        
        
        // 문자열( String ) -> 문자( char ) : charAt()
        // 문자열 => 문자열
        // 문자열에서 원하는 부분을 추출하는 substring() 메서드
        String pstr1 = str1.substring( 2, 4 );
        System.out.println( pstr1 );
        
        
        // 문자열 검색
        // 위치검색
        // 해당 문자열이 있는곳의 시작하는 인덱스값을 출력하는 indexOf() 메서드
        int pos = str1.indexOf( "ll" );
        System.out.println( pos );
        
        
        // 존재검색 : 해당 문자열이 있으면 true 없으면 false
        // 문자열이 특정 문자열로 시작하는지 확인하는 startsWith() 메서드
        // 문자열이 특정 문자열로 끝나는지 확인하는 endsWith() 메서드
        // 문자 시퀀스를 포함하는지 판별하는 contains() 메서드
        boolean b1 = str1.startsWith( "He" );
        System.out.println( b1 );
        
        
        // 문자열 치환
        // 문자열 내에서 특정조건 부합하는 일부를 다른문자열로 치환하는 replaceAll() 메서드
        String rstr1 = str1.replaceAll( "World" , "세상" );
        System.out.println( rstr1 );
        
        
        // 문자열 합치기
        // 문자열을 연결하는 concat() 메서드
        String jstr1 = str1.concat( "안녕" );
        System.out.println( jstr1 );
        
        
        // 대소문자 변환
        // 대문자로 변환시켜주는 toUpperCase() 메서드
        // 소문자로 변환시켜주는 toLowerCase() 메서드
       	System.out.println( "hello".toUpperCase() );
        System.out.println( "HELLO".toLowerCase() );
        
        
        // 문자열내 앞뒤 공백을 제거한후 반환하는 trim() 메서드 
        String ostr1 = "          hello          ";
        System.out.println( ostr1 + "::" );		// 문자열의 끝을 보기 위함이다.
        System.out.println( ostr1.trim() + "::" );
        
        
        // 문자열 분리
        // 문자열을 하위 문자열 배열로 분할하는 split() 메서드
        String sstr1 = "사과,딸기,수박,참외";
        String[] strarr = sstr1.split( "," );
        for( String str : strarr ) {
        	System.out.println( str );
        }
        
        
        // 분리된 문자열 결합
        // 배열의 원소를 결합해서 하나의 문자열로 만드는 join() 메서드
        String fstr1 = String.join( ",", strarr );		// static 메서드
        System.out.println( fstr1 );
        
        
        // 형식화된 문자열 결합
        // 문자열의 형식을 설정하는 format() 메서드
        String fstr2 = String.format( "%s:%s:%s", strarr[0], strarr[1], strarr[2] );
        System.out.println(fstr2);
        
    }
}

결과값

 

 

 

반응형
Comments