1. 程式人生 > >java基礎--2019/01/02

java基礎--2019/01/02

類(用來描述現實世界的事物的)
   屬性(成員變數)+行為(成員方法)
建立物件
   格式:類名 物件名=new 類名();
訪問類的成員
   成員變數:物件名.變數名
   成員方法:物件名.方法名();
成員變數和區域性變數區別
    在類中的位置不同
        成員變數:類中,方法外
        區域性變數:方法中或者方法宣告上(形式引數)
    在記憶體中的位置不同
        成員變數:堆記憶體
        區域性變數:棧記憶體
    生命週期不同
        成員變數:隨著物件的建立而存在,隨著物件的銷燬而消失
        區域性變數:隨著方法的呼叫而存在,隨著方法呼叫完而消失
    初始化值的不同
        成員變數:有預設值
        區域性變數:沒有預設值,必須賦值後才能使用
封裝類
    private修飾的成員變數(避免資料安全問題)用類中的getXxx()和setXxx()方法對成員變數操作
構造方法(用來建立物件,初始化)
    方法名和類名相同
    沒有返回值的型別、沒有具體返回值
    注意:如果類中沒寫構造方法,系統會提供一個預設的無參構造方法。如果給出構造方法,系統將不提供。

API(Application Programming Interface)應用程式程式設計介面
    看類的描述、類的構造方法、類的成員方法
    注意:在java.lang下的包是不需要導包的,其他需要

String s1=new String("hello");
String s2="hello";
String s3="hello";
值相同,所分配記憶體地址不同
==比較兩個值的地址//s1!=s2,s2==s3
equal比較倆個物件的值//s1==s2==s3
注意:"hello"放在方法區的常量池中,構造方法建立字串物件是在堆記憶體
Object是層次結構中的根類,所有類都直接或間接的繼承該類

String和StringBuilder(都是引用型別)
String:字串拼接時會產生多餘垃圾
    方法:需要掌握的方法較多請參考官方API
StringBuilder:解決String耗時且浪費空間的問題
    方法:容量(理論值預設16)capacity()、長度(實際值)length()、鏈式程式設計append(任意型別)、字串反轉reverse()
String與StringBuilder互轉
StringBuilder sb=new StringBuilder();
String s=sb.toString();
StringBuilder ss=new StringBuilder(s);