黑马程序员-----Java基础-----面向对象!

      ------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


*面向对象是一种思想,简单化,角色转换,由执行者变成指挥者。

 * 例子:打开冰箱,存储,关闭冰箱------冰箱打开,冰箱存储,冰箱关闭。
 * 
 * 判断几个对象 名词提炼法  例如:人开门  有两个对象
 * 
 * 面向对象有三个特征(封装   继承   多态)。
 * 
 * 类和对象的关系:
 * 类:对现实生活中事物的描述
 * 对象:就是这类事物,实实在在存在的个体。
 * 
 * 映射到java中,描述就是class定义的类,
 * 具体到对象就是对应java在堆内存中用new建立实体。
 * 
 * class Car
 * {
 * 描述颜色
 * String color = "红色";
 * 描述轮胎数
 * int num = 4;
 * 运行行为
 * void run()
 * {
 * System.out.println(color + ".."+num);
 * }
 * }
 * class CarDemo
 * {
 * public static void main(String args [])
 * {
 * 生产汽车,在java中通过new操作符来完成。其实就是在堆内存中产生一个实体。
 * Car c = new Car();c就是一个类类型变量。
 * 记住类类型变量指向对象。
 * 需求:把汽车颜色改成蓝色--指挥该对象做。在java中指挥方式是:对象。对象成员。
 * c。color = "blue";
 * }
 * }
 * Car c = new Car();
 * c.num = 5;
 * Car c1 = c;
 * c1.color = "green";
 * c.run();
 * 先是给num赋值5,把c的地址传递给c1,c1也指向c的堆内存,color变成green,运行c,输出为green  5  。
 * 
 * 成员变量和局部变量
 * 范围:成员变量作用于整个类中,局部变量作用于函数中或语句中,
 * 内存中的位置:成员变量在对内中,因为对象的存在,才在内存中存在。局部变量存在栈内存中。
 * 
 * 匿名对象
 * new Car();
 * new Car().num = 5;
 * new Car().color = "blue";
 * new Car().run();----num=4,color="red".
 * 匿名对象使用方式1. 当对对象的方法只调用一次时,可以用匿名对象来完成,这样比较简单:如果对一个对象多个成员调用,必须给这个对象起个名字。
 * 匿名对象使用方式2. 可以将匿名对象作为实际参数进行传递。
 * 需求:对汽车修改 黑色,三个轮子。
 * public static void show(Car c)
 * {
 * c.num = 3;
 * c.color = "black";
 * c.run();
 * }
 * Car q = new Car();|
 * show(q);          |
 * 或者   show(new Car());

* 封装:是指隐藏对象的属性  和实现细节,仅对外提供公共访问方式。
 * 好处:
 * 将变化隔离,便于使用,提高重用性,提高安全性。
 * 原则:
 * 将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共方法对其访问。
 * 
 * private 私有,权限修饰符,用于修饰类中的成员变量和成员函数。
 * 私有只在本类中有效。
 * 
 * age     属性有两种方法setAge和getAge.

 * 


------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------



你可能感兴趣的:(黑马程序员-----Java基础-----面向对象!)