`
johnnycmj
  • 浏览: 36792 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

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就是对象的引用变量

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


 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

 

  • 大小: 28.1 KB
分享到:
评论

相关推荐

    Java面向对象编程-ATm取款机系统

    在Java编程领域,面向对象编程(Object-Oriented Programming,OOP)是一种广泛采用的设计模式,它基于类和对象的概念,使代码更加模块化、可维护性更强。在这个"Java面向对象编程-ATM取款机系统"项目中,我们可以...

    [NET 4.0面向对象编程漫谈 应用篇].金旭亮---高清版.pdf

    面向对象编程的主要概念包括类(Class)、对象(Object)、继承(Inheritance)、封装(Encapsulation)和多态(Polymorphism)。 类是面向对象编程中的一种抽象数据类型,它描述了具有相同属性和行为的对象的集合...

    面向对象--西餐厅.rar

    面向对象编程是软件开发中的核心概念,特别是在Java后端开发中。这个名为"面向对象--西餐厅.rar"的压缩包文件包含了一些基本的类,它们模拟了一个西餐厅的运作过程,帮助我们理解面向对象编程的基本原理。让我们逐一...

    java面向对象---宠物领养系统

    在这个"java面向对象---宠物领养系统"案例中,我们将深入探讨如何运用面向对象的三大基本概念:封装、继承和多态。我们将特别关注方法的封装和重写,以及流程控制语句的应用。 1. 封装: 封装是面向对象编程的基础...

    北京大学研究生软件工程课程第五章面向对象方法-概念与表示.ppt

    1. 面向对象的基本观点: - 过程/函数观点:将模块视为执行特定功能的过程或函数。 - 数据结构观点:以数据结构为中心,每个模块负责处理该结构的操作。 - 事件驱动观点:模块响应特定的事件并做出相应动作。 - ...

    面向对象范式-基本概念介紹.ppt

    魏志军老师《设计模式》授课PPT 第一章:面向对象范式-基本概念介紹

    面向对象技术-1

    ### 面向对象技术-1 #### 面向对象技术的基本原理 面向对象技术是一种基于对象概念的软件开发方法。它强调的是对现实世界中的事物进行抽象,并将其映射到计算机程序中,以此来解决软件开发中的复杂性和可维护性等...

    Java面向对象试题-IT公司

    Java面向对象试题-IT公司

    (全)传智播客PHP就业班视频完整课程

    9-7 4.static关键字(静态方法) 面向对象编程三大特性① 9-7 5.面向对象编程三大特性② 9-7 6.面向对象编程三大特性③ 9-9 1.回顾 9-9 2.面向对象编程三大特性④ 9-9 3.面向对象编程三大特性⑤ 抽象类 9-9 4.接口 9-9...

    java-数组与方法及面向对象基础

    本教程将深入探讨Java中的数组、方法以及面向对象编程的基础概念,为初学者提供一个全面的学习指南。 一、数组 数组在Java中是存储同一类型数据的集合,可以看作是一个可变大小的容器。数组的定义和初始化通常包含...

    面向对象软件构造object-oriented software construction

    面向对象软件构造(Object-Oriented Software Construction,OOSC)是一种现代软件开发方法,它基于面向对象编程(Object-Oriented Programming,OOP)的概念,旨在提高软件的可维护性、可扩展性和重用性。...

    面向对象--包子店.rar

    在Java后端开发中,面向对象的概念是至关重要的,因为Java语言本身就是一种面向对象的语言。 在"面向对象--包子店"这个实例中,我们可以探索如何利用面向对象的思想来模拟现实世界中的包子店业务。首先,我们可以...

    《Java语言与面向对象程序设计》电子讲义 西工大版

    1. **Chapter0.ppt** - 这通常是一个介绍性的章节,可能包含课程大纲、学习目标、Java语言的历史和发展、以及面向对象编程的基本概念。 2. **Chapter01.ppt** - 开始正式的Java语言学习,可能涵盖了Java环境的安装...

    面向对象分析与设计.pdf

    1. 面向对象基础: 面向对象方法基于现实世界中对象的概念。这些对象具有属性(或状态),并且可以执行动作(或行为)。面向对象的三个核心概念是封装、继承和多态。封装是将数据和操作数据的代码捆绑在一起形成一个...

    ANSI-C实现面向对象 英文原著翻译

    - **通用性**:通过使用ANSI-C,读者可以更深入地理解面向对象编程的核心概念,而不被特定语言的语法细节所束缚。 #### 面向对象编程的核心概念 - **封装**:将数据和操作数据的方法绑定在一起,对外隐藏内部实现...

    面向对象考试题

    ### 面向对象考试题知识点解析 #### 单项选择题知识点解析 **1. 构造函数的特征** - **A. 构造函数的名称与它所属的类名相同** - 正确。构造函数的名字必须与类名相同。 - **B. 一个类只能有一个构造函数** - ...

    面向对象--卡内基--ssd3

    面向对象编程是软件开发中的一个核心概念,它允许我们通过模拟真实世界中的对象和概念来组织和设计代码。在这个“面向对象--卡内基--ssd3”主题中,我们可以推测这可能是一门关于卡内基梅隆大学(Carnegie Mellon ...

Global site tag (gtag.js) - Google Analytics