[javasterdi]5Javaベース(4)


2021-java-study


2021 Java学習3週目課題

Javaベース


1.基本型と参考型


1.1基本タイプ(元のタイプ)

  • 8種類の基本タイプ
  • デフォルト値は
  • なので、Null
  • は存在しません.
  • Nullを追加したい場合は、RAPPERクラス
  • を使用してください
  • の物理値を格納し、スタックメモリに
  • を格納する.
  • が収容可能なサイズを超えると、コンパイルエラー
  • が発生する.
  • 主に構文エラー
  • 型説明寸法値の範囲デフォルト値バイト記号の整数値8 bit-128~1270短記号の整数値16 bit-327668~327670 int記号の整数値32 bit-24783648~2147836470長記号の整数値64 bit 922337203685437508~922337707070707070707070707070 char Unicode文字16 bit 0~65535'u 3230000'浮動小数点数323410(3.410-10338 X)の近似値0.0 ddoule浮動小数点数64ビット(1.7 X 10-308)~(1.7 X 10308)の近似値0.0 dboolean論理値10 bitfalse,trueflse

    1.2参照タイプ

  • 非基本型タイプはいずれも参照型
  • である.
    空のオブジェクトを表すNullは
  • 存在する
    アドレス値
  • の空間を記憶する、Hip Memoryに
  • を記憶する.
  • 構文的にはエラーはありませんが、実行時にエラーが発生した実行時エラー
  • タイプ例割り当てのメモリサイズデフォルト配列(Array)int[]arr=newint[5];4 bバイト(オブジェクトのアドレス値)Nullは、4 bバイト(オブジェクトのアドレス値)NullクラスStr="プロジェクト"を列挙する.Fruite apple = new Fruite();4 bバイト(オブジェクトのアドレス値)Nullインタフェース4 bバイト(オブジェクトのアドレス値)Null

    2.自然


    2.1文字


    |プログラムが直接示す値

    2.2文字の種類

  • 整数
  • int a = 15;     // 10진수 리터럴
    int b = 015;    // 8진수 리터럴 - 0으로 시작 -> 10진수 값으로 13
    int c = 0x15;   // 16진수 리터럴 - 0x로 시작 -> 10진수 값으로 21
    int d = 0b0101; // 2진수 리터럴 - 0b로 시작 -> 10진수 값으로 5
    
    long 타입 리터럴은 숫자 뒤에 L 또는 l을 붙여 표시
    long e = 26L;
  • 実数型
  • double f = 0.1234;
    double g = 1234E-4; // 1234*10*(-4) 이므로 0.1234와 같다
    float,double을 명시적으로 붙이기도 함
    (float는 f를 꼭 붙여야하고, double은 생략가능)
    
    float h = 0.1234f;
    double i = .1234D;
  • 文字文字文字テキストライブラリ
  • 단일 인용부호('')로 문자 표현
    
    char a = 'S';
    char b = "사";
    char c = \uae00;    //유니코드값, \u다음 4자리 16진수로
  • 文字列文字
  • 기본타입이 아님, ("")로 문자열 표현
    String lter = "JAVA";
    lter + 26 = "lter26"    //문자열 출력
  • 論理文字
  • boolean a = true;
    boolean b = 10 > 0; //b 값 true
    boolean c = 0;  // C와 다르게 boolean타입으로 0,1을 거짓,참으로 사용X
    int a = null;   //에러  
    
    String str = null;  
    str = "JAVA";  

    3.変数の宣言と初期化


    3.1変数宣言


    |メモリを消去して使用するデータを保存する
    int number; //number 변수선언
    double length;  //length 변수선언

    3.2初期化変数


    |変数を使用して値を追加する操作が初期化されていない場合、ゴミ値が導入され、エラーが発生する可能性があります.
    number = 5;
    length = 3.4;

    3.3変数宣言+初期化


    |変数の宣言と初期化を同時に行うことができます
    int number = 5;
    int length = 3.4;

    4.変数のスキャンとライフサイクル


    4.1変数のスキャン


    |変数の使用範囲を示す
    public class Test {
    
        int var1;
        
        void pro(){
        
            int var2;
        
        
        }
    
    }
  • var 1のスキャンはクラス全体です.
  • はpro()メソッドにも使用可能である
  • var 2のスケールはpro()メソッドスキームである.
  • pro()には適用されません.

    4.2変数のライフサイクル


    |変数の作成と破棄
    public class Test {
    
        int var1;   // var1: 인스턴스 변수,필드,전역변수
        static int var2;    // var2: 클래스 변수,정적 변수
        void pro(int var3){ // var3: 매개변수,파라미터
        
            int var4 = 100; //var4: 지역변수,local,변수
       
        }
    
    }
  • var 1オブジェクトの作成時に変数を作成します.すなわち、現在のテストクラスのインスタンスがプライマリメソッドまたは他のクラスに作成されると、
  • が作成されます.
  • インスタンスは、参照がないときにGarbage Collectorによってオブジェクトを消去し、インスタンス変数も
  • から消える.
  • var 2は、クラスが最初に呼び出されたときに生成され、Javaアプリケーションが終了すると
  • が消える.
  • var 3は、pro()メソッドの呼び出し時にvar 3を生成し、pro()メソッドの終了時に
  • を破棄する.
  • var 4は"{"の開始時に作成され、"}"の終了時に
  • が破棄される.

    5.タイプ変換、鋳造、およびタイプアップグレード


    5.1タイプ変換


    |変数または定数のタイプを別のタイプに変換
    byte < short < int < long < float < double < String
    <---整数変数---><-実数変数->

    5.2鋳造


    |明示的な変換-ビッグデータ型からビッグデータ型への変換
    float a = 10;
    int b = a;
    浮動小数点数変数を
  • int型変数に入れるとエラー
  • になる.
    float a = 10;
    int b = (int) a;
  • は明示的な入力
  • を必要とする.
  • 値を出力すると、実数型10.0は整数型10に変換されます
  • 5.3タイプのアップグレード


    |自動/暗黙変換-小さいデータ型から大きいデータ型に変換
    int a = 10;
    float b = a;
    int型データを
  • 浮動小数点型変数に入れると、int型変数は浮動小数点型変数よりも小さく定義されるので、自動的に浮動小数点型変数に変換する、
  • に代入する.
  • の値を出力と、整数10は自動的に実数10.0に変換される.

    6.主案と副案の声明


    6.1一次元アレイ


    |同種データのグループ化
    int []a = new int[3];   // a는 3칸짜리 배열
    int []a = {10,20,30};   // a[0]:10,a[1]:20,a[2]:30
    要素を追加せずに
  • アレイのサイズのみが決定された場合、初期値は
  • に自動的に割り当てられます.
  • デジタル0-0初期化
  • ブール型-false
  • に初期化
  • String型-null初期化
  • 6.2 2 2 Dアレイ


    |1 Dアレイに行概念を追加するアレイ
    int[][]arr = new int[2][3]; // 2행 3열
    int[][]arr = {{1,2,3},{10,20,30}};

    7.タイプ推論、var


    |コード作成時にタイプが特定されていませんが、コンパイラはそのタイプを推定できます.
  • Java 10以降に追加された
  • 地域変数は、宣言と同時に
  • を初期化する必要があります.
    //Java 9 이하
    String str = "Hello";
    
    //Java 10 이상
    var str = "Hello I am SooYeon";
    -> 컴파일러가 오른쪽에 초기화 값으로 제공되는 것을 통해 타입 유추