java面向对象(一)
来源:互联网 发布:租用网络服务器多少钱 编辑:程序博客网 时间:2024/05/24 15:41
学java核心的一个部分就是面向对象,那么什么是面向对象呢?
一、面向对象的概念
说到面向对象不得不说的就是面向过程,面向过程就是一步一步的去完成某一件事情,就拿开车这样的一件事来说。
人开车,首先就要把车门打开上车
其次是,钥匙插上启动车子
最后就是开车。
这样的一个过程就是面向过程,同样的一件事,再拿面向对象的方法去分析
人开车,首先要找到的就是车这样一个对象,
汽车这个对象有着车门打开,启动,行驶这几个功能,
人在要使用汽车的时候,就是使用汽车的这几个功能。
从这样的一个例子看,面向对象的思考方式更符合于人的思考习惯,也从这样的一个例子中可以看出,面向过程中,人是执行者,他需要去执行开车门,启动车子,行驶车子这些动作,而面向对象则是去使用车子的功能,就好比是指挥者,相反,面向过程中人就是执行者。
基本概念了解完了以后就来说说代码的具体体现:
public class CarDemo { public static void main(String[] args) { Car car = new Car(); //实例化一个Car对象,定义一个Car类型的变量car去接收实例化的对象。 car.start(); //汽车调用启动的方法 car.run(); //汽车调用行驶的方法 }}class Car{ public void start(){ //汽车启动的方法 System.out.println("Car is Starting"); } public void run(){ //汽车行驶的方法 System.out.println("Car is running"); }}
上面用到了一个new关键字以及注释中的实例化,实例化是指将类具体到某一个东西,而实例化一个对象则是需要使用new关键字。
说一说类和对象:
类:是对某类事物的描述
对象:是某类事物的具体体现。
二、匿名对象:
匿名对象就是没有名称的对象。
对于匿名对象就使用代码来体现更为直观。
<pre name="code" class="java"><pre name="code" class="java">public class CarDemo1 {public static void main(String args[]){new Car().run();}}class Car{String name;//定义一个成员变量表示汽车的名称 public void run(){System.out.println("Car is running");}}
以上这个例子就是一个使用匿名对象的例子,对以上代码进行变换,使用匿名对象作为参数传递:public class CarDemo1 {public static void main(String args[]){show(new Car());}public static void show(Car car){System.out.println("show");}}class Car{String name;//定义一个成员变量表示汽车的名称 public void run(){System.out.println(" is running");}}
匿名对象使用场景:当对象方法仅进行调用一次时,使用匿名对象。匿名对象可以作为实际参数进行传递。
三、成员变量于局部变量的区别。
在类中,有两种成员,一个是成员变量,一个是成员方法。成员变量所代表的是类的属性,而成员方法代表的是类的行为。
成员变量:凡是定义在类中的变量就叫做成员变量。
成员变量是定义在类中的变量。这里我们就要与局部变量区分下:
1、成员变量定义在类中,在整个类中都能访问,而局部变量定义在方法或者局部代码块中,只在所属的区域中有效;
2、成员变量定义在堆内存的对象当中,局部变量定义在栈内存的方法中;
3、成员变量随着对象的出现而出现,随着对象的消失而消失;
4、成员变量因其在堆内存中,所以有默认的初始化值,而局部变量没有默认初始化值,必须要先初始化以后才能使用。
- java面向对象(一)
- Java 面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- JAVA面向对象(一)
- Java 面向对象(一)
- JAVA面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java面向对象(一)
- Java面向对象(一)
- java 面向对象一
- java 面向对象 一
- poj3993Not So Flat After All(筛法素数+分解质因子)
- 设计模式 之 状态模式
- Console命令详解,让调试js代码变得更简单[转载]
- 青蛙的约会(欧几里得扩展)
- 深入理解java异常处理机制
- java面向对象(一)
- 在生产中常用的育苗基质实例
- 硅藻土的主要优点
- 设置文件大小
- 指针
- css页面通用样式初始化代码
- 模板元的简单学习
- UI-UIScrollView
- 关于代码实现activity的启动模式