面向对象基础

面向对象的基本概念

面向对象

java语言是一种面向对象的的语言 要使用java进行面向对象的编程 首先要建立面向对象的思想 面向对象的三大特征  封装 继承 多态

对象

对象是用来描述客观事物的一个尸体 用面向对象的方法解决时要对现实中的对象进行分析和归纳

类是具有相同属性和方法的一组对象的集合 类定义了对象将会拥有的特征和行为

 

定义类

[访问修饰符]class 类名{

//类的内部具体代码

}

访问修饰符比如public private 等是可选的    class是声明类的关键词  按照命名规范 类名首字母大写

属性

[访问修饰符]数据类型 属性名

访问修饰符是可选的 除了访问修饰符之外 其他语法和声明变量类似

方法 

对象执行操作的行为称为类的方法

[访问修饰符]返回方法 方法名称 (参数类型 参数名 1, 参数类型 参数名2------){

}

访问修饰符是可选的 返回类型可以是void 再顶i方法是 返回类型为void时表面没有返回值 方法体中不必使用return关键字返回具体数据  但可以永return退出方法  返回类型如果不是void 资方发展一定要使用 return关键字返回对象类型结果 否则程序会出现编译错误

创建对象

类名 对象名 =new 类名();

new是关键字 左边的类名为对象的数据类型 右边的类名()称为类的构造方法

使用对象 

对象名.属性  //引用对象的属性

对象名.方法名()  //引用对象的方法

 

成员方法

带参数的方法work()方法课接受用户输入内容 创建work()方法是定义的参数叫形式参数 简称形参 调用方法是传入的参数叫做实际参数 简称实参

方法重载 是指在一个类中定义多个同名的方法 但要求每个方法具有不同的参数类型或者参数个数 。

方法重载的特点  

在一个类中  方法名相同 参数的个数或类型不同  方法的返回值不能作为判断方法直接是否构成重载的依据  

方法重载其实是对原有的方法进行一种升级 可以根据参数的不同采用不用的实现方法 而且不需要编写多个名称 简化了类调用方法的代码

 

成员变量的作用域

类中的属性 也就是直接在类中定义的变量称为成员变量 他定义在方法的外部

成员变量和局部变量的区别

作用域不同 局部变量的作用域仅限于定义它的方法 其他方法外无法访问它   

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

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

将举报变量可以和成员变量同名 并于在使用时 局部变量有更高的优先级

 

构造方法  

在java中档类创建一个对象是会自动调用该类的构造方法 构造方法分为默认构造方法和代餐数的构造方法

构造方法的定义

构造方法的主要作用是进行一些数据的初始化  

[访问修饰符]方法名([参数列表]){

}

构造方法没有返回值 默认构造方法没有参数 因此参数列表可选  构造方法与类名相同

 

封装概述

java中封装的是指就是将类的专改信息隐藏在类的内部 不允许外部程序直接访问 二十通过该类提供的方法来时间和对隐藏信息的操作和访问  

封装反映了事物相对独立性有效避免了外部错误对此象的影响并且对能对对象使用者由于大一产生的错误操作起到预防作用同样面向对象编程提倡对象之间实现松耦合关系 

封装的好处在隐藏类的实现细节 让使用者只能通过程序员规定的方法来访问数据也可以方便的加入存取控制修饰符来限制不合理操作

封装的步骤  

1修改属性的可见性   将person类中的属性有public 修改为private即可

2 设置setter/getter()方法     可以手动添加setter/getter()方法也可以使用组合键ctrl+shift+s由系统添加

3设置属性存取限制  堆属性设置合法性检查 需要在setter方法中进一步利用条件判断语句进行赋值限制

 

 

包的概念

java中的包机制也是封装的一种形式 

包主要有3个方面的作用

包允许将类组合成较小的单元 易于找到和使用相应的类文件    防止命名冲突 java中只有在不同的包中的类才能充满 不同的管理员命名同名类在所难免 有包更容易管理    包允许在更广的范围内保护类数据方法根据访问规则包外有可能不能访问该类

包的定义

package 包名;

package是关键字    包的声明必须是java源文件中第一条肥猪是性语句 二期一个源文件只能有一个包声明语句 设计把偶要和文件系统结构相对应   在命名包是要遵守一下编码规则

一个唯一的报名前缀通常是全部小写的ASCII字母 并且是一个顶级域名 com edu gov net org 通常使用组织的网络域名逆序 

 

使用访问修饰符

是使用访问修饰符类成员

 

类的访问修饰符

修饰符               作用域同一包中非同一包中
public 可以使用可以使用
默认修饰符可以使用不可以使用

 

类成员的访问修饰符

修饰符            作用域同一类中同一包中子类中其他地方

private

可以使用不可以使用不可以使用不可以使用
默认修饰符可以使用可以使用不可以使用

不可以使用

protected可以使用可以使用可以使用不可以使用
public可以使用可以使用可以使用可以使用

 

 

static关键字

一个类可以创建n个对象 如果n个对象某些数据需要公用 就需要使用static关键字修饰这些诗句 

用static修饰的属性称为静态变量或者类变量  没有使用static修饰的属性称为实例变量

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值