OOP是面向对象的一种设计和实现软件系统的方法。
OOP是在程序中模拟显示世界中的概念,现实世界中的所有事物都被视为对象。
一.那么在生活中那些物体是对象呢?
1. 生活中具体的某一个物体或事物就是一个对象。
2. 一些抽象的对象(生活中不存在,有人构想的对象)。
了解了什么是对象,那么我们应该如何去描述对象呢?
1. 特征
2. 行为(用途/功能)
例子:
“A在学习java,学分加1了。”
在这个例子中A就是对象。我们描述A这个对象,通过:“姓名为A”,“A有学分”这两个特征来描述,还通过“学习”这这个行为来描述。
生活中有许许多多的对象,我们需要对他们进行归类,形成——类。
二.生活中是如何对物体进行分类的呢?
相似的特征或相似的行为对对象进行分类。
我们构建类,可能是直接根据现有的场景构建,还可能是根据生活中类的特征和行为进行定义。
根据定义我们知道,类由两部分组成:
1. 属性 属性对应的是对象的特征
2. 方法 方法对应的是对象的行为
三.JAVA中,我们将现实生活中概念进行定义,形成java中的类。
类的基本结构:
public class 类名 { //声明属性的格式 private 数据类型 属性名; //定义方法的格式 public 返回值数据类型 方法名(数据类型 参数名,...){ //代码 } }
例子:
“A在学习java,学分加1了。”
public class Student { private String name; private double score; public void Study(){ } }
在程序中我们定义了类,我们要用类来实例化对象。
java中实例化对象和调用方法的格式
实例化对象的关键字是:new
格式:
//类名 对象名 = new 类名(); Student stu = new Student();
调用方法的格式:
//对象名.方法名(参数值,...); stu.setName("A"); stu.study();
对象是否可以作为参数进行传递?
可以的!
public class Hero { private String name; private double blood; //定义一个设置姓名属性的方法 public void setName(String na){ name = na; } //定义一个获取姓名属性值的方法 public String getName(){ return name; } //定义一个设置血量属性的方法 public void setBlood(double bl){ blood = bl; } //定义一个获取血量属性值的方法 public double getBlood(){ return blood; } //对象mon作为参数进行传递 public void Fight(Monster mon) { mon.setBlood(mon.getBlood()-1); System.out.println(name+"砍了"+mon.getName()+"一滴血"); } }
java中实例化对象会用到构造函数,那么什么是构造函数呢?
四.构造函数(构造函数又叫做构造方法、构造器)
因为Java会给每一个类提供一个默认的构造函数(不带任何参数的构造函数).
1.构造函数的格式
public 类名(数据类型 参数名,...){ //代码 }
例子:Student s1=new Student();
在这个例子中调用了
public Student(){}
这个构造函数,这就是java中在你没有定义构造函数时提供的默认的构造函数。
而当我们在类中定义了构造函数,则默认的构造函数将被覆盖,无法再继续使用了;只能使用我们定义的构造函数。
构造函数严格地说不算是“方法”——只因为它也可以传入参数。因而与方法存在许多区别。
2.普通方法和构造函数的区别
1.构造函数是不需要定义返回值数据类型的;普通方法必须要定义返回值数据类型。
2.构造函数的名字必须和类名完全相同;普通方法的名字可以自己定义。
3.构造函数是用来实例化对象的;普通方法是用来执行对象的某一个行为的。
4.构造函数每使用一次,就会实例化一个新的对象;普通方法在使用过程中,只要对象不变,那么还是同一个方法。
3.构造函数的用途
1.构造函数用来实例化对象的。
2.构造函数还可以用来给属性设置初始值。
五.方法的重载
实现方法重载的条件是:
1.方法的名字必须要完全相同
2.方法所带的参数个数、参数类型和参数的顺序必须要有一个不同。
调用是根据参数来决定的。
例子:
public void study(){ score++; System.out.println(name+"正在学习中,学分是"+score); } /** * 重载的学习方法 * @param score参数 * @reture 返回score学分 */ protected double study(double score){ this.score+=score; System.out.println(name+"正在学习中,学分是"+this.score); return this.score; }
上面的例子中有study方法的重载,注意:
虽然study的类型不一样,根据定义任然是方法个重载。
六.this关键字
当属性名和参数名相同的时候,使用this关键字来区分,加上this的表示属性,没有加的则是参数。
例子:
String name=”NetJava”; Student st2=new Student(name); //构造时 public Student(String name){ this.name=name; }
this表示的是什么呢?
this表示的是当前调用方法的对象。
在本例子中this表示的是st2所代表的对象。
本次OOP基础就先介绍到这里,下一期将从继承等方面继续进行介绍,谢谢大家!
相关推荐
《面向对象程序设计——Java语言》是一门深入探讨如何使用Java进行面向对象编程的课程,由知名讲师程细柱制作的PPT电子课件。面向对象编程(Object-Oriented Programming,简称OOP)是现代软件开发中的核心编程范式...
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它通过将数据和操作数据的方法封装在对象中,实现了程序设计的模块化和抽象化。本教程对比了两种广泛应用的面向对象语言——C++和Java...
面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它基于“对象”的概念,将数据和操作这些数据的方法封装在一起。在Python中,面向对象编程是其核心特性之一,使得Python成为了一种非常适合...
然而,相比起C++或Java等支持面向对象编程(Object-Oriented Programming, OOP)的语言,C语言本身并不直接内置面向对象的特性。但这并不意味着我们不能在C语言中实现面向对象的概念。这篇博客“C语言也能面向对象...
Java基础——面向对象编程 面向对象编程(Object-Oriented Programming,OOP)是一种编程方法,它将现实世界中的对象抽象出来,并使用计算机模型来描述。面向对象编程的核心概念是类(class)和实例(instance)。...
面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它将复杂的问题分解为一系列相互协作的对象,以实现更清晰、可维护的代码结构。在“JAVA语言与面向对象程序设计”一书中,通常会涵盖以下几个...
通过学习"Java语言与面向对象程序设计"这门课程,学生将不仅掌握Java编程的基本技能,还能理解面向对象编程的精髓,为编写高效、可靠的软件打下坚实的基础。配合印旻和王行言的答案解析,学生能更好地理解课程内容,...
在Java编程语言中,面向对象编程(OOP)是一种核心概念,它基于类和对象的概念,以及封装、继承和多态三大特性。在本文中,我们将深入探讨这些知识点,以便更好地理解Java中的面向对象编程。 首先,让我们回顾一下...
【北大青鸟ACCP6.0 第二学期 S2 JAVA oop面向对象】课程是针对Java编程中的核心概念——面向对象编程(OOP)进行深入讲解的教程。面向对象编程是一种编程范式,它将复杂的问题分解为多个独立的对象,通过对象之间的...
Java语言完全支持面向对象编程,其三大特性——封装、继承和多态,是OOP的核心。 1. 封装:这是面向对象编程的基础,它将数据和操作数据的方法捆绑在一起,形成一个独立的实体,即对象。在Java中,通过访问修饰符...
#### 一、面向对象编程语言的发展史 面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,其核心在于将现实世界中的对象及其属性和行为映射到软件系统中,从而使得程序更加直观、易于理解...
### Java的面向对象编程——继承、接口、包 #### 一、面向对象编程基础 **1.1 类与对象** 面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它将数据和对数据的操作封装在一个实体内,即类...
适合人群:具备一定的编程能力,对Java语言的基本语法有一定的了解,适合在校大学生 能学到什么: ① 做系统的基本框架与思路 ② 功能模块化,后集体调用,方便后期管理 ③ 代码的规范使用 阅读建议: ①可以打开...
Java作为一种典型的面向对象编程语言,充分体现了面向对象的核心思想。 #### 二、Java面向对象的三大特征 ##### 1. 封装 **概念**:封装是面向对象编程的核心之一,它指的是将数据(属性)和方法(行为)绑定在...
面向对象编程(Object-Oriented Programming,简称 OOP)是一种程序设计思想,它将数据和操作数据的方法定义为统一的整体——对象(Object),并通过类(Class)来实现对象的创建。在Java语言中,面向对象编程的主要...
本实例——"Java面向对象编程经典实例-模拟彩票",是通过Java语言来实现一个彩票模拟系统,以帮助开发者更好地理解和掌握面向对象设计思想。 首先,我们来看"模拟彩票"这个主题。在实际生活中,彩票系统包含了购买...
总的来说,理解并熟练运用面向对象编程技术,特别是Java中的面向对象特性,对于成为一名优秀的Java程序员至关重要。这包括创建和理解类的定义,使用封装、继承和多态性来设计和实现高效、可扩展的代码。通过不断的...
面向对象编程(Object-Oriented Programming,简称OOP)是Java语言的核心特性,通过封装、继承、多态等概念,使得代码更易于维护和复用。 1. **封装**:在Java中,封装是将数据和操作数据的方法捆绑在一起,形成一...
javaoop.zip 06.Java面向对象编程(计算器) javaexception.zip 07.Java面向对象编程扩展(计算器异常捕捉实例) 第3部分(5个程序包) javaio.zip 09.Java输入/输出流 javavi.zip 09.Java输入/输出流上机作业...