大資料<javaSE + Linux精英實訓班>_day_08

來源:互聯網
上載者:User

標籤:賦值   ...   大數   棧記憶體   類對象   面向過程   代碼實現   類的屬性   取值   

1:物件導向->物件導向和面向過程的思想        都是我們編寫程式的一種方式。                面向過程:這種程式設計方式,遇到事情思考:"我該怎麼做",然後一步步實現的過程。                        典型的c語言就是。        物件導向:這種程式設計方式,遇到事情思考:"我改讓誰來做",然後那個誰就是對象。                      他要怎麼做這件事是他自己的事,反正到最後合力把事做好就可以了。                      找不到人,就建立這個人。java語言就是。

  2:物件導向->代碼實現


    大象裝冰箱總共分幾步
     開門  把大象裝進去(儲存大象-> java的功能)  關門
   
    分析:
     具體存在哪些事物:冰箱、大象
     java語言就是描述現實生活中事物的
     
    class  冰箱{
     開門(){
    
     }
     關門(){
    
     }
     儲存大象(大象 d){
    
     }
    }
  
    class  大象(){
   
    }
  
    public static void main(String[] args){
     冰箱  XX = new  冰箱();  // 冰箱就真的存在了
     大象  YY = new 大象(); // 大象也存在了
   
     // 調用功能
     XX.開門();
     XX.儲存大象(YY);
     XX.關門();
    }
  
  3:物件導向->局部變數與成員變數的區別



package com.itstar.demo01;public class Car {    // Car的組成部分:屬性和方法    // 需要駕駛它        // 顏色    String color;    // 輪子    int count;        // 定義跑的功能    public void run() {        System.out.println("小汽車正在跑" + "..." + color + ".." + count);            }}
package com.itstar.demo01;public class CarTest {    public static void main(String[] args) {        // 建立Car類的變數        Car c = new Car();        c.color = "red";        c.count = 4;                c.run();    }}
package om.itstar.demon02;public class Car {    String color;    int count;        public void run() {        System.out.println("小汽車正在跑" + color + "..." + count);    }}
package om.itstar.demon02;/* * 成員變數與局部變數的區別: *          *         1、定義位置上的區別 *             成員變數,定義在類中,方法外 *             局部變數,方法內,語句內 *         2、範圍不同 *             成員變數,作用範圍是整個類 *             局部變數,方法內,語句內 *         3、預設值不同 *             成員變數有自己的預設值的 *             局部變數沒有預設值,不賦值不能使用 *         4、記憶體位置不同 *             成員變數,跟隨對象進入堆記憶體內進行儲存 *             局部變數,跟隨自己的方法進入棧記憶體 *         5、生命週期不同 *             成員變數,跟隨對象,在堆記憶體中儲存。記憶體等待JVM清理,生命週期較長 *             局部變數,跟隨方法,方法執行完要出棧。生命週期較短。 *  */public class CarTest {}
package com.itstar.demon03;public class Person {    String name;}
package com.itstar.demon03;public class PersonTest {    public static void main(String[] args) {        int a = 1;        function(a);        System.out.println(a); // 1    }        public static void function(Person p) {        p.name = "韋桂金";    }        public static void function(int a) {        a += 3;    }}
package com.itstar.demon04;    /*     * 描述人的這個事物:     *         屬性:姓名  年齡     *         方法:說話     *      *     新的關鍵字:private 私人的屬於成員修飾符 不能修飾局部變數     *             被private修飾,只能在自己的本類中使用->許可權修飾     *      *     對私人的變數,提供了公用的訪問方式:方法     */public class Person {    // 人的姓名,成員變數    String name;    // 人的年齡,成員變數 ->安全問題 負責(不會導致程式掛掉)但是違背了現實的情況    private int age;        // 變數age被我們私人,提供方法讓外部類使用    public void setAge(int a) {        // 對a進行範圍的限制        if(a < 0 || a > 200) {            age = 18;        }else {            age = a;        }    }        // 定義方法,對變數age擷取值使用    public int getAge() {        return age;    }        // 定義人說話的功能    public void speak() {        System.out.println(name + "..." + age + "在說話中");    }}
package com.itstar.demon04;/* *  建立對象,對象調用自訂類的屬性和方法 */public class PersonTest {    public static void main(String[] args) {        // 建立person類對象        Person p = new Person();        // 對成員變數進行賦值        p.setAge(42);        p.name = "huern";                p.speak();                System.out.println(p.getAge());    }}
package com.itstar.demo05;import javax.swing.plaf.synth.SynthSeparatorUI;/* *     類描述人: *         屬性:姓名    年齡 *         方法:說話 */public class Person {    private String name;    private int age;        // get當中不用加this因為沒有同名變數    public String getName() {        return name;    }    // 成員變數name  age的賦值    public void setName(String name) {        this.name = name; // 增加閱讀性,把局部變數賦值給他成員變數    }    public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }        public void spek() {         String name = "歐文 ";        int age = 51;                //System.out.println(this);        System.out.println("人在說話" + this.name + "..." + this.age);    }    }
package com.itstar.demo05;/* * 測試類別 */public class TestPerson {    public static void main(String[] args) {        // 建立對象        Person p = new Person();        // 調用set方法,對成員變數賦值        p.setAge(18);        p.setName("李總");        p.spek();        }}
package om.itstar.demo06;public class Person {    private int age;    public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }        public boolean compare(Person p) {        // p1.age > p2.age?  this是誰?誰調用的就是誰p1        return this.age > p.age;    }}
package om.itstar.demo06;public class TestPerson {    public static void main(String[] args) {        //  測試Person類中的年齡比較功能                Person p1 = new Person();        Person p2 = new Person();                p1.setAge(20);        p2.setAge(15);                boolean b = p1.compare(p2);        System.out.println(b);    }}

 

大資料<javaSE + Linux精英實訓班>_day_08

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.