1. 程式人生 > 實用技巧 >(一)Java熱身

(一)Java熱身

一.基礎

知識範圍:java語法基礎、資料型別、控制語句、陣列、字串String。可按照程式碼進行從上往下邊敲邊學。

package java_day01;  //
public class day01{  //
        byte x0=1; //成員變數
        short x1=1; //成員變數
        int x2=1; //成員變數
        long x3=1; //成員變數
        float x4=1; //成員變數
        double x5=1; //成員變數
        char x6=1; //成員變數
        boolean x7=true; //成員變數
final int x8=1; //成員常量 public static void main(String[] args) { int y0=1; //區域性變數 final int y1=100; //區域性常量 int[] y3={1,2,3,4,5}; //一維陣列 int[][] y4= {{1,2,3},{4,5,6},{7,8,9}}; //二維陣列 String y5 ="The is a String type"; //不可變字串 String y5_1 = new String(y5); //
String new建立新字元池 StringBuffer y6 = new StringBuffer(); //可變字串 StringBuilder y7 = new StringBuilder(); float type_y8 = (float)y1; //強制轉化型別 y0++; //只有混合使用(後++--)流程才執行1儲存再執行++--操作 int sum_y01 =y1+y0; //+-*/% if ((y0>y1)&(y0<y1)) { System.out.println(
"全真才真1"); } else if ((y0==y1)&&(y0!=y1)) { System.out.println("全真才真2"); } else { System.out.println("都是假的3"); } switch (y1/10) { //轉換 case 10: case 9: case 8: System.out.println("優秀4"); break; default: //違約 System.out.println("不及格"); break; } while (y0<10) { //先條件後執行 y0++; } do { //先執行後條件 y0++; } while(y0<20); /* for (int i = 0; i < y3.length; i++) { //for的增強,列印一維陣列 System.out.print(y3[i]); } for (int i = 0; i < y4.length; i++) { //列印二維陣列 for (int j = 0; j < y4.length; j++) { if (j==1) { // break 標籤; //根據條件停止當前包括以後的活動 continue; //跳過當前條件設定的活動繼續執行活動 } System.out.print(y4[i][j]); } } // 《String》 String a = "The is a String type.docx"; String b = "the is a String type.docx"; String[] c = {"1.Xlsx","2.docx","1.xlsx","4.docx"}; String d = new String(a); //new創了新物件 System.out.println(a==b); //判斷ab是否在同一字元池 System.out.println(a+b.concat(c)); //連線 System.out.println(a.indexOf("i",4)); //從4索引往後查詢最前 System.out.println(a.lastIndexOf("i",4)); //從4索引往前查詢最後 System.out.println(a.substring(2,5)); //擷取 String[] a1 = a.split(" "); //空格分隔 for (String a2 : a1) { // System.out.println(a2); } System.out.println(a.equals(b)); //字串型別相等? System.out.println(a.equalsIgnoreCase(b)); //忽略大小寫 System.out.println(a.compareTo(b)); //對比a與b大小。 System.out.println(a.compareToIgnoreCase(b)); //忽略大小寫 int a1=0; //定義容器 int a3=0; for (String a2 : c) { a2 = a2.toLowerCase(); //大寫轉小寫 if(a2.endsWith("xlsx")) {a1++;} //指定字尾結束 else{a3++;} } for (String a4 : c) { a4.trim(); //去空值(空格) if(a4.startsWith("1")) {a1++;} else if(a4.startsWith("2")) {a3++;} //指定字首結束 } System.out.println(a1); StringBuilder e = new StringBuilder("the is a StringBuilder"); //可變字串 System.out.println(e.length()); //StringBuilder長度 System.out.println(e.capacity()); //StringBuilder容量 System.out.println(e.insert(0,"love")); //插入 System.out.println(e.delete(0, 4)); //刪除n~m值 System.out.println(e.append(" love")); //在後面追加 System.out.println(e.replace(0, 4, "love 1 ")); //指定n~m值修改 */ System.out.printf("\n%d\r",y0); System.out.println("==================以上顯示為測試區================="); System.out.printf("\t\t學習java\n"+"自"+"從\"第%d天\"算起\'第%d天\'結束!\ry0y1是否相等?:%b",y0,y1,y0==y1); } }

二.面向物件

2.1.面向物件框架一

2.2.面向物件框架二

程式碼

package java地球;  // 所屬星球

public class java動物世界_鷹 {  //鷹群世界
    // 1.成員變數: 鷹群世界特徵+世界資源
    String color = "黑";  // 封裝性: 訪問範圍{private私有(當前類[注意:不能修飾(外部類)])、無修飾[預設](所屬星球)、protected(不同星球的子類[注意:不能修飾(外部類)])、public(所有星球)} <--訪問控制修飾符加在[類|變數|方法]前面
    char Tree_grass = '草';  // 成員變數
    public final String Stardust = "星塵";  // final: 成員常量
    String insect = "蟲";  // 成員變數
    static int Tree;  // static靜態修飾: [[靜態|例項]類|變數|方法]可任意使用,但用靜態修飾的[類|變數|方法]不能使用[[例項]類|變數|方法]。執行時啟動建立,執行結束時自動銷燬釋放記憶體。
    // 2.成員方法: 鷹界統一動作
    void 吃(){
    // 3.區域性變數: 定義在 方法內,語句內。作用範圍結束,變數空間會自動釋放。
        char days = '百';
        System.out.println("鷹正在吃"+insect);
        System.out.println("吃完後!:\n\t又能活上"+days+"天了,真是充電1分鐘用電5小時呀!");
        System.out.println("還意外發現神祕人留下的"+Tree+"樹枝資源!");
    }
    // 3.成員方法: 鷹界正統血緣
    void 鷹界血緣(){
        System.out.println("鷹的意志!");
    }
    // 二.物件: 單隻(鷹一代)
    private class 鷹一代 extends java動物世界_鷹{  // 繼承性: 鷹一代繼承java動物世界_鷹
        // 2.1 成員變數: 鷹一代引數
        private String name = "鷹一代";
        private int age = 80;
        // 2.2 成員方法: 鷹一代資訊
        private void 鷹一代資訊() {
            System.out.println("名字:" + name + "\n年齡:" + age + "\n羽毛顏色:" + color);
        }
        // 2.3 成員方法: 鷹一代動作
        private void 鷹一代捕食動作(int time) {
            if (time >= 6 & time <= 10) {
                System.out.println("時間是" + time + "點,鷹正在捕" + insect + "回去喂小鷹");
            } else {
                System.out.println("還在休息");
            }
        }
        // 3.3 鷹血統
        private void 鷹一代血緣(){
            System.out.println("血緣: 一代鷹成功獲得血緣!");
            super.鷹界血緣();  //呼叫鷹群血緣: 呼叫前提繼承+目標訪問控制修飾符不能是私有(有個例外子類能無條件訪問父類內所有[變數|方法])
        }
    }   // 內部類: 定義在統一類中第一個以後視為外部類
    // 鷹二代一號
    class 鷹二代1號 extends 鷹一代 {
        String name = "鷹一代1號";
        int age = 20;
        char Tree_grass = '枝';  //此變數名跟鷹群世界資源Tree_grass一樣
        private void 鷹二代1號資訊(){
            System.out.println("名字:" + name + "\n年齡:" + age + "\n羽毛顏色:" + color);
        }
        private void 鷹二1號代捕食動作(int a) {
            super.鷹一代捕食動作(a); // java繼承性: 繼承鷹一代技能【注意】java 不支援多繼承,但支援多重繼承。
        }
        private void 鷹二代1號新技能(char day){  //java多型性: 在繼承的基礎上學到新技能
            if (day =='秋'){
                System.out.println(day+"天來了"+name+"正在尋找樹"+this.Tree_grass+"建窩外部預防冬天!");  // 指定世界資源名
                System.out.println(day+"天來了"+name+"正在尋找"+super.Tree_grass+"建窩內部預防冬天!");  //指定當前類資源名
            } else if (day=='冬'){
                System.out.println(day+"天來了"+name+"正在繁育後代!");
            } else if (day=='春'){
                System.out.println(day+"天來了"+name+"正在尋找獵物,整個冬天沒吃東西了!");
            } else if (day=='夏'){
                System.out.println(day+"天來了"+name+"正在逃避獵人的捕殺");
            }
        }
        private int 鷹二代1號儲存資源(int a){
            Tree = a;
            return Tree;
        }
        private void 鷹二代1號血緣(){
            System.out.println("血緣: 鷹二代1號成功獲得血緣!");
            super.鷹一代血緣();  // 呼叫鷹一代留下的血緣
        }
    }  // 外部類
    // 鷹二代二號
    class 鷹二代2號 extends 鷹一代{
        String name = "鷹二代2號";
        int age = 19;
        void 鷹二代2號資訊(){
            System.out.println("名字:" + name + "\n年齡:" + age + "\n羽毛顏色:" + color);
        }
        void 鷹二代2號建鷹窩(){
            System.out.println("鷹二代2號獲得"+Tree+"資源成功建立了自己的鷹帝國!");
        }
        private void 鷹二代2號血緣(){
            System.out.println("血緣: 鷹二代2號成功獲得血緣!");
            super.鷹一代血緣();  // 呼叫鷹一代留下的血緣
        }
    }  // 外部類
    public static void main(String[] args) {  // 主方法->方法->類賦值
        java動物世界_鷹 a = new java動物世界_鷹();  // java例項化物件: 初始化世界
        java動物世界_鷹.鷹一代 b = a.new 鷹一代();  // 初始化鷹一代物件
        java動物世界_鷹.鷹二代1號 c = a.new 鷹二代1號();  // 初始化二代鷹1號物件
        java動物世界_鷹.鷹二代2號 d = c.new 鷹二代2號();
        b.鷹一代資訊();
        b.鷹一代捕食動作(7);  // 傳入實參時間6~10點在捕食
        b.鷹一代血緣();  // 一代結束
        System.out.println("----------->分隔<----------");
        c.鷹二代1號資訊();
        c.鷹二1號代捕食動作(11);
        c.鷹二代1號新技能('冬');  // 傳入“春夏秋冬”天看看他在幹嘛
        c.鷹二代1號血緣();
        c.鷹二代1號儲存資源(100);  // 傳入資源數
        System.out.println("----------->分隔<----------");
        d.鷹二代2號資訊();
        d.鷹二代2號建鷹窩();
        d.鷹二代2號血緣();
    }
}