读书人

04.面向对象(一)-面向对象的概念

发布时间: 2012-08-31 12:55:03 作者: rapoo

04.面向对象(1)--面向对象的概念
4、面向对象4.1、面向对象的概念4.1.1、 面向过程

? ?在早期出现的编程语言中,如大家都非常熟悉的C语言,当我们要用这种语言来定义一个复杂的数据类型等都是面向过程。

4.1.2、 面向对象

面向对象的3大特性:

封装 ?(Encapsulation)

继承 ?(Inheritance)

多态 ?(Polymorphism)

4.1.3、类与对象

? ? ? ? 1、类:类是对某一类事物的描述,是抽象的、概念上的定义

2、对象:对象是实际存在的该类事物的个体,因而也称实例(instance)

?

4.1.4、类的定义:

类可以将数据和函数封装在一起,其中数据表示类的属性,函数表示类的行为。定义类就是要定义类的属性与行为(方法)。如:

?

    class Person{int age;void shout(){System.out.println(“oh,my god! my age is “ + age);}}
?

?

4.1.5、 对象的产生和使用

要创建新的对象,需要使用new关键字和想要创建对象的类名,如:

?

Person p1 = new Person();

?

等号左边以类名Person做为变量类型定义了一个变量p1,来指向等号右边通过new关键字创建的一个Person类的 ? ? 实例对象,变量p1就是对象的引用变量

变量在被初始化之前是不能使用的,一个方法内部的变量必须进行初始化赋值,否则编译无法通过 ? 的情况。当一个 ? 对象被创建时,会对其中各种类型的成员变量按图自动进行初始化赋值。


04.面向对象(一)-面向对象的概念

?4.1.6、 对象的比较

?有两种方式可用于对象间的比较,它们是“==”运算符与equals()方法,“==”操作符用于比较两个变量的值是否相等,equals()方法用于比较两个对象的内容是否一致。如:

?

class Compare{public static void main(String[] args){    String str1 = new String("abc");String str2 = new String("abc");String str3 = str1;if(str1==str2){System.out.println("str1==str2");}else{System.out.println("str1!=str2");}if(str1==str3){System.out.println("str1==str3");}else{System.out.println("str1!=str3");}}}

?程序运行结果是:

str1!=str2

str1==str3

我们下面再来看看使用equals()方法的情况。

?

      class Compare{public static void main(String[] args){        String str1 = new String("abc");String str2 = new String("abc");String str3 = str1;if(str1.equals(str2)){System.out.println("str1 equal str2");}else{System.out.println("str1 not equal str2");}if(str1.equals(str3)){System.out.println("str1 equal str3");}else{System.out.println("str1 not equal str3");}}}

?程序运行结果是:

str1 equal str2

str1 equal str3

?

读书人网 >编程

热点推荐