黑马程序员——面向对象概述+类与对象的关系-第8天
2015-08-10 15:02
519 查看
----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------
面向对象概述+类与对象的关系
面向过程:强调的是功能行为
面向对象:将功能封装进对象,强调具备了功能的对象。
比如:冰箱是一个对象,它有很多的功能。
![](http://img.blog.csdn.net/20150810150403243?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
由执行者转变成指挥者。
面向过程是面向对象的基础。
一切皆是对象。(千万别在面试官面前说,那是达到一种境界的感悟)
1、面向对象是一种思想,就是把复杂问题简单化。
2、举一个具体的例子,根据结合实际的情景。
例如:
其实面试官,你就是用面向对象的思想思考问题。公司里面现在有招人的需求,那么就是代表了公司的稳健发展。
接下来,就可以说,你现在需要找一些具备专业编程技能的人来帮你完成公司的工作,我就是那个对象,我就是那个具备专业编程功能。你找我就对了。其实你就是在指挥我做事情,你在使用我的专业编程功能,在为公司创造价值。(这个就是结合实际场景,连同拍马屁一起搞定。)
另外多想几个例子,做好几手准备。
开发的时候,先找具备该对象的功能。先考虑对象,有对象拿过来用,没对象自己制造一个。
用面向对象的方法分析:名词提炼法。
人
{
开门(门)
{
门.开();
}
}
门
{
开()(操作门轴等。)
}
//面向对象:三个特征:封装,继承,多态。
//以后的开发就是在找对象使用。没有对象,就创建一个对象。
//找对象,建立对象,使用对象,维护对象的关系。
类和对象的关系。
现实生活中的对象:张三 李四。
想要描述:提取对象中共性内容。对具体的抽象。
描述时:这些对象的共性有:姓名,年龄,性别,学习java功能。
映射到java中,描述就是class定义的类。
具体对象就是对应java在堆内存中用new建立实体。
![](http://img.blog.csdn.net/20150810150731418?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
类就是:对现实生活中事物的描述。
对象:就是这类事物,实实在在存在的个体。
需求:描叙汽车。描述事物就是在描述事物的属性和行为。属性和行为共同成为类中的成员(成员变量和成员方法)
class Car
{
//描述颜色
string color="red";
//描述轮胎数
int num=4;
//描叙运行行为
void run()
{
system.out.println(num+".."+color);
}
}
class Cardemo
{
public static void main(sting[] args)
{
//生产汽车。在java中通过new操作符来完成。
//其实就是在堆内存产生一个实体。
Car c=new Car();//c就是一个类类型变量。记住:类类型变量指向对象。把Car地址赋给c:
![](http://img.blog.csdn.net/20150810150902930?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
//需求:把已有的汽车颜色改成蓝色。指挥该对象做使用。在java指挥方式是:对象.对象成员。
c.color="blue";//Car中的color被赋值成blue
c.run();//打印的是4..blue
![](http://img.blog.csdn.net/20150810151023747?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Car c1=newCar();//凡是new,它就会产生一个新的对象。c1指向了初始化状态的Car。它的值没有改变
![](http://img.blog.csdn.net/20150810151128793?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
c1.run();//打印的依然是4..red
Car c=new Car();//Car的地址赋给c
![](http://img.blog.csdn.net/20150810151319055?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
c.num=5;//c中赋值5给num
![](http://img.blog.csdn.net/20150810151336867?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
Car c1=c;//c的地址赋给c1
![](http://img.blog.csdn.net/20150810151405950?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
c1.color="green";//color的值变成green
c.run();//打印的是5..green
面向对象概述+类与对象的关系
1、面向对象(概述)
//理解面向对象面向过程:强调的是功能行为
面向对象:将功能封装进对象,强调具备了功能的对象。
比如:冰箱是一个对象,它有很多的功能。
由执行者转变成指挥者。
面向过程是面向对象的基础。
2、面向对象(举例)
对象不仅仅是指人。一切皆是对象。(千万别在面试官面前说,那是达到一种境界的感悟)
1、面向对象是一种思想,就是把复杂问题简单化。
2、举一个具体的例子,根据结合实际的情景。
例如:
其实面试官,你就是用面向对象的思想思考问题。公司里面现在有招人的需求,那么就是代表了公司的稳健发展。
接下来,就可以说,你现在需要找一些具备专业编程技能的人来帮你完成公司的工作,我就是那个对象,我就是那个具备专业编程功能。你找我就对了。其实你就是在指挥我做事情,你在使用我的专业编程功能,在为公司创造价值。(这个就是结合实际场景,连同拍马屁一起搞定。)
另外多想几个例子,做好几手准备。
开发的时候,先找具备该对象的功能。先考虑对象,有对象拿过来用,没对象自己制造一个。
3、面向对象(类与对象的关系)
例如:人开门用面向对象的方法分析:名词提炼法。
人
{
开门(门)
{
门.开();
}
}
门
{
开()(操作门轴等。)
}
//面向对象:三个特征:封装,继承,多态。
//以后的开发就是在找对象使用。没有对象,就创建一个对象。
//找对象,建立对象,使用对象,维护对象的关系。
类和对象的关系。
现实生活中的对象:张三 李四。
想要描述:提取对象中共性内容。对具体的抽象。
描述时:这些对象的共性有:姓名,年龄,性别,学习java功能。
映射到java中,描述就是class定义的类。
具体对象就是对应java在堆内存中用new建立实体。
类就是:对现实生活中事物的描述。
对象:就是这类事物,实实在在存在的个体。
需求:描叙汽车。描述事物就是在描述事物的属性和行为。属性和行为共同成为类中的成员(成员变量和成员方法)
class Car
{
//描述颜色
string color="red";
//描述轮胎数
int num=4;
//描叙运行行为
void run()
{
system.out.println(num+".."+color);
}
}
class Cardemo
{
public static void main(sting[] args)
{
//生产汽车。在java中通过new操作符来完成。
//其实就是在堆内存产生一个实体。
Car c=new Car();//c就是一个类类型变量。记住:类类型变量指向对象。把Car地址赋给c:
//需求:把已有的汽车颜色改成蓝色。指挥该对象做使用。在java指挥方式是:对象.对象成员。
c.color="blue";//Car中的color被赋值成blue
c.run();//打印的是4..blue
Car c1=newCar();//凡是new,它就会产生一个新的对象。c1指向了初始化状态的Car。它的值没有改变
c1.run();//打印的依然是4..red
Car c=new Car();//Car的地址赋给c
c.num=5;//c中赋值5给num
Car c1=c;//c的地址赋给c1
c1.color="green";//color的值变成green
c.run();//打印的是5..green
相关文章推荐
- Mac Pro 提高效率 快捷键 程序员
- 关于游戏程序猿的职业生涯规划
- 题解分析及总结:经典逻辑面试题“假设有一个池塘,里面有无穷多的水,现有2个空水壶,如何使用少于15L的水,用2个水壶从池塘里取得3升水”
- 99%的海量数据处理面试题
- Android程序员必读电子书推荐
- 程序员学炒股(7) 股指期货收盘价对第二天开盘价有影响吗?
- 为什么想得慢的人能赢,程序员又如何
- 程序员常去的14个顶级开发社区
- 为什么程序员的业余项目大多都死了?
- 黑马程序员——代理
- 漫谈程序员(五)20年资深程序员编程经验分享
- 漫谈程序员(五)20年资深程序员编程经验分享
- 黑马程序员——类加载器
- 漫谈程序员(四)三个因素决定你的薪水高低
- 漫谈程序员(四)三个因素决定你的薪水高低
- 漫谈程序员(二)程序员保值的4个秘密
- 漫谈程序员(二)程序员保值的4个秘密
- 黑马程序员——注解
- 漫谈程序员(三)别被技术绑架
- 漫谈程序员(三)别被技术绑架