面向对象介绍

面向对象

类和对象

对象

其实每一个对象都有自己的特征,包括静态特征和动态特征

对象是用来描述客观事物的一个实体,由一组属性和方法构成

在编程中,对象的属性被存储在一些变量里,如可以将“姓名”存储在一个字符串类型的变量中,将“员工号”存储在一个整形变量中,对象的行为则通过定义方法来实现

对象都是有两种特征

静态特征

静态特征是可以用某些数据来描述的特征,如人的名字,年龄等

动态特征

动态特征是对象所表现的行为或对象所具有的功能,比如购物,收款等

​ 表格如下:

对象静态特征静态特征的值动态特征
姓名张浩
顾客对象 张浩年龄20买东西
体重60kg
员工号1000
收银员对象 李明姓名李明收钱
部门财务部
封装

封装就是把一个事物包装起来,并尽可能隐藏内部细节,对象的属性和方法是相辅相成,不可分割的,它们共同组成了实体对象,因此,对象具有封装性。

类定义了对象将会用有的特征(属性)和行为(方法)。

类的属性:对象所拥有的静态特征在类中表示时称为类的属性,打一个比方,购买东西的顾客都有着自己的姓名,因此姓名可以称为“顾客类”的属性,只是不同对象的这一属性值不同,如顾客的姓名不相同

类的方法:对象执行的操作称为类的方法,列如,所以顾客都有购物行为,因此这就是“顾客类”的一个方法

类与对象的关系

一个类为它的全部对象给出了一个统一的定义,而它的每个对象则是符合这种定义的一个实体,因此类和对象的关系就是抽象和具体的关系。类是多个对象进行综合抽象的结果,是实体对象的概念模型,而一个对象是一个类的实例,如图

在这里插入图片描述

如何定义类

定义类名:通过定义类名,得到程式最外层的框架

public class A{
    //定义类
}

编写类的属性:通过在类的主体中定义变量来描述类所具有的静态特征(属性),这些变量称为类成员变量

public class A{
	String a;//声明了一个字符串类型的属性
	int b;//声明了一个整型类型的属性
}

编写类的方法:通过在类中定义方法来描述类所具有的行为,这些方法称为成员方法

public class A{
	String a;//声明了一个字符串类型的属性
	int b;//声明了一个整型类型的属性
    public void show(){
        String aa;//在方法中声明了一个字符串类型的变量
    }
}
方法调用

同一个类中的方法,直接使用方法名调用该方法

不同类的方法,首先创建对象,再使用"对象名.方法名()"来调用

public class A{
	public void show(){
		
	}
	public void show1(){
		show();//直接调用
        A a =new A();
        a.show();//创建对象点方法
	}
}

变量的作用域

成员变量:AutoLion类方法可以直接使用该类定义的成员变量。如果其他类的方法要访问它,必须首先创建该类的对象,然后才能通过操作符"."来引用

局部变量:它的作用域仅仅在定义该变量的方法内,因此只有在这个方法中能够使用。

使用成员变量和局部变量需要注意以下几点内容:

作用域不同。局部变量的作用域仅限于定义它的方法,在该方法外无法访问。成员变量的作用域在整个类内部都是可见的,所以成员方法都可以使用,如果访问权限允许,还可以在类外部使用变量。

初始值不同。对于成员变量,如果在类定义中没有给他赋初始值,java会给它应该默认值,基本数据类型的值为0,引用类型的值为null。但是java不会给局部变量赋初始值,因此局部变量必须要定义赋值后在使用。

在同一方法中,不允许有同名的局部变量。在不同的方法中,可以有同名的局部变量

局部变量可以和成员变量同名,并且在使用时,局部变量具有跟高的优先级。

返回值类型

return 表达式

​ 例如,在A()方法中,返回值是String,因此在方法体中必须使用return返回一个字符串。

public String show(){
    return "111";
}

​ 如果方法没有返回值,则返回值类型为void。

public void show(){
	
}

​ 因此,在编写程序时一定要注意方法声明中返回值的类型的方法体中真正返回值的类型是否匹配

如果不匹配,编译器就会报错

return 的作用

其实这里的return语句时跳出语句的一种,它主要做两件事。

​ 1、跳出方法。意思是“我完成了,我要离开”

​ 2、给出结果。如果方法产生一个值,这个值放在return后面,即<表达式>部分,意思是“离开方法

,并将<表达式>的值返回给调用他的程序。”

有参方法

带参方法

<方法名>是定义的方法方名字,它必须使用合法的标识符。

<参数列表>是传送个方法的参数列表。列表中各参数间以逗号分隔。

调用带参方法

把参数分别称为形式参数和实际参数,简称形参与实参,形参是在定义方法时对参数的称呼,目的是定义方法需要传入的参数个数和类型。实参是在调用方法时传递给方法处理实际的值。

调用方法时,注意以下两点

先实例化对象,在调用方法

实参的类型,数量,顺序都要与行参一一对应。

Package 包

为什么需要包

包有以下三个方面的作用:

(1) 包允许将类组合成较小的单元(类似文件夹)易于找到和使用相应的类文件

(2) 防止命名冲突:java中只有在不同包中的类才能重名。世界上有千千万万的程序员,命名同名的类几乎是难免的。有了包,类名就好管理多了

(3) 包允许在跟广的范围内保护类,数据和方法,可以在包内定义类。根据规则,包名的代码有可能包内访问该类。

如何声明包

要声明一个包(package),只要包含一个packag命名作为一个java源文件的第一条语句就可以。

包的声明必须是java源文件中第一条非注释语句,而一个源文件只能有一个包声明语句

命名包的规范:

java包的名字通常由小写字母组成,不能以圆点开头或结尾一个唯一包名的前通常是全部小写的ASCII,并且是一个顶级域名

包名的后续部分依不同机构各自内部的规范不同而不同。这类命名规范可能以特定目录名的组成来区分部门,项目,机器或注册名。

如何导入包

在使用impott时可以指定类的完整描述,即“包名.类名“,来导入包中的某个特定的类。

字符串

字符串的拆分

(1) separator可选项,标识拆分字符串时使用一个或多个字符。如果不选择该项,则返回包含该字符所有单个字符所有当字符的元素数组

一个字符串后面。

如何使用字符串

简单来说,使用字符串分为两步

(1) 定义并初始化字符串

(2) 使用字符串,对字符串进行一些处理

字符串的提取和查询

字符串是一个字符序列,每一个字符都有自己的位置,字符串事实上也是一个字符数组,因此他从位置0开始到(字符串长度-1)结束,一个字符串"青春无悔",其中,“青”,“青”,“草”,"原"的索引下标依次为0,1,2,3

字符串的链接

在使用"+“运算符连接字符串和int(或double)类型数据时,”+"将int(或double)类型数据自动转化成String类型

除此之外,在java中,String类也提供了另一个方法concat(),将一个字符串连接到另一个字符串后面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
面向对象(Object Oriented)是一种编程思想和方法,它将数据和操作数据的行为组合成一个对象,通过对象之间的互相调用和交互实现程序的功能。 面向对象开发方法是一种基于面向对象思想的软件开发方法,它主要包括以下几个方面: 1. 抽象:抽象是面向对象开发方法的核心,它将对象的共性抽象成为类,而将对象的个性作为类的实例化对象。抽象的过程需要考虑到对象的属性和行为,以及对象之间的关系。 2. 封装:封装是指将数据和行为封装在一个对象,只对外开放必要的接口,而隐藏内部实现细节。封装可以保护数据的安全性和完整性,也可以简化程序的调用方式。 3. 继承:继承是指一个类可以继承另一个类的属性和方法,同时还可以添加自己的属性和方法。继承可以减少代码的重复性,同时也可以增加代码的可扩展性。 4. 多态:多态是指同一个方法可以根据不同的对象调用出不同的行为。多态可以提高代码的复用性和可扩展性,同时也可以减少代码的耦合度。 面向对象开发方法具有以下优点: 1. 可维护性:面向对象开发方法具有良好的模块化特性,可以方便地对程序进行维护和修改。 2. 可扩展性:面向对象开发方法具有继承和多态等特性,可以方便地对程序进行扩展和重用。 3. 可重用性:面向对象开发方法可以将相似的功能封装成类,实现代码的重用。 4. 可靠性:面向对象开发方法可以通过封装和继承等特性,保证程序的安全性和稳定性。 总之,面向对象开发方法是一种高效、灵活、可维护、可扩展、可重用、可靠的软件开发方法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值