1. 程式人生 > >初識大資料(IDEA註冊,java基礎)

初識大資料(IDEA註冊,java基礎)

IDEA service破解:

一、http://idea.lanyus.com/ 網站上下載http://idea.lanyus.com/JetbrainsCrack-2.10-release-enc.jar 二、複製檔案到idea.exe.vmoptions,idea64.exe.vmoptions,-javaagent:D:\360極速瀏覽器下載\JetbrainsCrack-2.10-release-enc.jar

ThisCrackLicenseId-{ 
“licenseId”:”ThisCrackLicenseId”, 
“licenseeName”:”idea”, 
“assigneeName”:”豐少爺“, 
“assigneeEmail”:”
[email protected]
”, “licenseRestriction”:”For This Crack, Only Test! Please support genuine!!!”, “checkConcurrentUse”:false, “products”:[ {“code”:”II”,”paidUpTo”:”2099-12-31”}, {“code”:”DM”,”paidUpTo”:”2099-12-31”}, {“code”:”AC”,”paidUpTo”:”2099-12-31”}, {“code”:”RS0”,”paidUpTo”:”2099-12-31”}, {“code”:”WS”,”paidUpTo”:”2099-12-31”}, {“code”:”DPN”,”paidUpTo”:”2099-12-31”}, {“code”:”RC”,”paidUpTo”:”2099-12-31”}, {“code”:”PS”,”paidUpTo”:”2099-12-31”}, {“code”:”DC”,”paidUpTo”:”2099-12-31”}, {“code”:”RM”,”paidUpTo”:”2099-12-31”}, {“code”:”CL”,”paidUpTo”:”2099-12-31”}, {“code”:”PC”,”paidUpTo”:”2099-12-31”} ], “hash”:”2911276/0”, “gracePeriodDays”:7, “autoProlongated”:false}

1.java環境搭建

變數名:JAVA_HOME
變數值:C:\Program Files (x86)\Java\jdk1.8.0_91        // 要根據自己的實際路徑配置
變數名:CLASSPATH
變數值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;         //記得前面有個"."
變數名:Path
變數值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

2.java 基本資料結構

內建資料型別
Java語言提供了八種基本型別。六種數字型別(四個整數型,兩個浮點型),一種字元型別,還有一種布林型。
byte:
byte 資料型別是8位、有符號的,以二進位制補碼錶示的整數;
最小值是 -128(-2^7);
最大值是 127(2^7-1);
預設值是 0;
byte 型別用在大型陣列中節約空間,主要代替整數,因為 byte 變數佔用的空間只有 int 型別的四分之一;
例子:byte a = 100,byte b = -50。
short:
short 資料型別是 16 位、有符號的以二進位制補碼錶示的整數
最小值是 -32768(-2^15);
最大值是 32767(2^15 - 1);
Short 資料型別也可以像 byte 那樣節省空間。一個short變數是int型變數所佔空間的二分之一;
預設值是 0;
例子:short s = 1000,short r = -20000。
int:
int 資料型別是32位、有符號的以二進位制補碼錶示的整數;
最小值是 -2,147,483,648(-2^31);
最大值是 2,147,483,647(2^31 - 1);
一般地整型變數預設為 int 型別;
預設值是 0 ;
例子:int a = 100000, int b = -200000。
long:
long 資料型別是 64 位、有符號的以二進位制補碼錶示的整數;
最小值是 -9,223,372,036,854,775,808(-2^63);
最大值是 9,223,372,036,854,775,807(2^63 -1);
這種型別主要使用在需要比較大整數的系統上;
預設值是 0L;
例子: long a = 100000L,Long b = -200000L。
"L"理論上不分大小寫,但是若寫成"l"容易與數字"1"混淆,不容易分辯。所以最好大寫。
float:
float 資料型別是單精度、32位、符合IEEE 754標準的浮點數;
float 在儲存大型浮點陣列的時候可節省記憶體空間;
預設值是 0.0f;
浮點數不能用來表示精確的值,如貨幣;
例子:float f1 = 234.5f。
double:
double 資料型別是雙精度、64 位、符合IEEE 754標準的浮點數;
浮點數的預設型別為double型別;
double型別同樣不能表示精確的值,如貨幣;
預設值是 0.0d;
例子:double d1 = 123.4。
boolean:
boolean資料型別表示一位的資訊;
只有兩個取值:true 和 false;
這種型別只作為一種標誌來記錄 true/false 情況;
預設值是 false;
例子:boolean one = true。
char:
char型別是一個單一的 16 位 Unicode 字元;
最小值是 \u0000(即為0);
最大值是 \uffff(即為65,535);
char 資料型別可以儲存任何字元;
例子:char letter = 'A';。

3.Static關鍵字

  • 在類中,用static宣告的成員變數為靜態成員變數,它為該類的公用變數,在第一次使用時被初始化,對於該類的所有物件來說,static成員變數只有一份。
  • 用static宣告的方法為靜態方法,在呼叫該方法時,不會將物件的引用傳遞給它,所以在static方法中不可訪問非static的成員。
  • 靜態方法不再是針對於某個物件呼叫,所以不能訪問非靜態成員。
  • 可以通過物件引用或類名(不需要例項化)訪問靜態成員。
  • //成員變數在New的時候才往堆裡邊放
  • //只要是類中的方法或屬性加了static 標誌著這個屬性/方法是該類的靜態屬性
  • //當該類載入的時候就被放在記憶體子中 也就是說該類沒有例項化也可以直接用 類名.屬性名/方法名 來呼叫,
  • // 還有一點就是 static方法只能呼叫static方法

3.1 Static的作用

static表示“全域性”或者“靜態”的意思,用來修飾成員變數和成員方法,也可以形成靜態static程式碼塊,但是Java語言中沒有全域性變數的概念。 例子:

public class SingleObject {
    public static void test1(){
        System.out.println("我愛學習");
    }
     public static void main(String[] args) {
        SingleObject.test1();
----------------------------------------------------
public class SingleObject {
    public void test1(){
        System.out.println("我愛學習");
    }
     public static void main(String[] args) {
        SingleObject singleObject = new SingleObject();
        singleObject.test1();

有括號調方法,沒括號調屬性。

4.成員變數,區域性變數,例項變數

  • 區域性變數指在程式中,只在特定過程或函式中可以訪問的變數,是相對與全域性變數而言的。在面向過程和麵向物件程式語言中均有,是程式中最常見最常用的變數。
  • 成員變數:在類體的變數部分中定義的變數,也稱為屬性。幾乎只出現在面向物件程式語言中。
案例1:
void main()
{
       int test = 0; //區域性變數
       printf("%d", test);
}

案例2:
public class Clothes 
{ 
String id; //例項變數 
private String colorType; //例項變數 
private int size; //例項變數 
private static String depart; //類變數 
final String design="yangzi"; //常量 
}

程式碼中的例項變數、類變數、常量都屬於成員變數,那麼其區分的依據是什麼?這與變數的修飾符有關係,也就是上面程式碼中的private、static、final等修飾符。

  • 成員變數的修飾符

修飾符 *** 說明

public 成員變數可以被專案中的任何方法訪問,建議儘量少用

protected 不在同一個包中的類不能訪問,但子類可以訪問

private 只能在同一個類中使用

static 類變數,其值為該類的所有物件共享,不會因類的物件不同而不同

final 最終成員變數,其值保持不變,即常量

transient 當物件被持久化時(例如寫入資料庫),該成員變數的值不需要儲存

volatile 同步多執行緒訪問的成員變數的值,以便使不同的執行緒總是得到 該成員變數的同一個值。關於執行緒

5.package與import

  • package語句作為Java原始檔的第一條語句,指明該檔案中定義的類所在的包。(若預設該語句,則指定為無名包)。 它的格式為:package pkg1.

  • Java編譯器把包對應於檔案系統的目錄管理,package語句中,用‘.’來指明包(目錄)的層次,例如使用語句 package com.sxt則該檔案中所有的類位於.\com\sxt目錄下

  • 如果將一個類打包,則使用該類時,必須使用該類的全名(例如:com.sxt.MyClass),Java編譯器才會找到該類。

  • 也可以使用import在檔案的開頭引入要使用的類,例如:

import com.sxt.MyClass;

  • 可以不需要用import語句使用java.lang包中的類。
  • java.lang——包含一些Java語言的核心類,如String,Math,Interger,Systeam和Thread,提供常用功能。
  • ——包含能提供多種輸入/輸出功能的類。
  • java.util——包含一些實用工具類,如定義系統特性、使用與日期日曆相關的函式。

log4j日誌:

引包:

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.11.0</version>
        </dependency>

    </dependencies>

resources—>log4j.properties

### 設定###
log4j.rootLogger = INFO,stdout

### 輸出資訊到控制擡 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

### 輸出DEBUG 級別以上的日誌到=E://logs/log.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = E://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

### 輸出ERROR 級別以上的日誌到=E://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =E://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n