• java全栈day08--面向对象


    今日内容介绍
    1、面向对象思想
    2、类与对象的二者关系
    3、局部变量和成员变量之间的关系
    4、封装的思想
    5、private,this关键字的用途
    6、案例

    01面向对象和面向过程的思想
    * A: 面向过程与面向对象都是我们编程中,编写程序的一种思维方式
    * a: 面向过程的程序设计方式,是遇到一件事时,思考“我该怎么做”,然后一步步实现的过程。
    * b: 面向对象的程序设计方式,是遇到一件事时,思考“我该让谁来做”,然后那个“谁”就是对象,他要怎么做这件事是他自己的事,反正最后一群对象合力能把事就好就行了。

    02面向对象的思想的生活案例
    * A: 买电脑(组装机)
    * a: 面向过程:自己该怎么做
    * b: 面向对象:找人帮我们做


    03面向对象好处
    * A: 面向对象好处
    * a: 面向对象思维方式是一种更符合人们思考习惯的思想
    * b: 面向过程思维方式中更多的体现的是执行者(自己做事情),面向对象中更多的体现是指挥者(指挥对象做事情)。
    * c: 面向对象思维方式将复杂的问题简单化。

    成员变量和局部变量的区别(有可能面试题)
    * 区别一:定义的位置不同
    * 定义在类中的变量是成员变量
    * 定义在方法中或者{}语句里面的变量是局部变量
    * 区别二:在内存中的位置不同
    * 成员变量存储在对内存的对象中
    * 局部变量存储在栈内存的方法中
    * 区别三:声明周期不同
    * 成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失
    * 局部变量随着方法的运行而出现在栈中,随着方法的弹栈而消失
    * 区别四:初始化不同
    * 成员变量因为在堆内存中,所有默认的初始化值
    * 局部变量没有默认的初始化值,必须手动的给其赋值才可以使用。

    public class Person {
    private String name;
    private int age;

    // set方法,变量name,age赋值
    public void setAge(int age) {
    this.age = age;
    }

    public void setName(String name) {
    this.name = name;
    }

    // get方法,变量name,age获取值
    public int getAge() {
    return age;
    }

    public String getName() {
    return name;
    }

    public void speak() {
    String name = "李俊";
    int age = 36;

    System.out.println("人在说话 " + this.name + "..." + this.age);
    }
    }
    * 标准测试代码
    package cn.itcast.demo05;

    public class PersonTest {
    public static void main(String[] args) {
    Person p = new Person();
    //调用set方法,对成员变量赋值
    p.setAge(18);
    p.setName("俊哥");
    p.speak();


    //调用get方法,获取成员变量的值
    // System.out.println(p.getName());
    // System.out.println(p.getAge());
    }
    }

  • 相关阅读:
    BZOJ2741:[FOTILE模拟赛]L
    BZOJ3996:[TJOI2015]线性代数
    BZOJ3876:[AHOI2014]支线剧情
    BZOJ1861:[ZJOI2006]Book书架
    BZOJ3190:[JLOI2013]赛车
    HDU-1540 Tunnel Warfare 【线段树+单点修改+区间更新】
    HDU-1846 Brave Game 【巴什博弈】
    HDU-1421 搬寝室 【DP】
    HDU-4734 F(x) 【数位DP】
    AHU-412 Bessie Come Home 【Dijkstra】
  • 原文地址:https://www.cnblogs.com/lijun6/p/9452189.html
Copyright © 2020-2023  润新知