03JAVA基础(方法/类/封装(构造方法))

目录

1.方法

[1.1 方法的定义](#1.1 方法的定义)

[1.2 方法的重载](#1.2 方法的重载)

2.类和对象

3.封装

[1. private关键字](#1. private关键字)

[2. this关键字](#2. this关键字)

[3. 封装](#3. 封装)

[4. 构造方法](#4. 构造方法)


1.方法

含义: 将具有独立功能的代码块组织成一个整体,具有特殊功能的代码集

注意: 方法必须先创建才可以使用,需要手动调用执行

1.1 方法的定义

格式: public static void 方法名(参数1){

//方法体

}

方法的调用: 方法名(参数2);

|------|---------|-----|
| 参数类型 | 位置 | 实例 |
| 形参 | 方法定义的参数 | 参数1 |
| 实参 | 方法调用的参数 | 参数2 |

带返回值方法的格式: public static 数据类型 方法名(参数1){

return 数据;

}

接受方法返回值的类型要与定义数据类型一致

方法的注意事项:

1.方法不能嵌套

2.void代表物返回值,可以省略return,也可以写,后面后面不加数据

1.2 方法的重载

方法重载:

多个方法在同一个类

多个方法具有同一个名字

多个方法的参数不相同,类型不同或者数量不同

注意: 方法参数的传递过程中

对基本数据类型,形式参数的改变不影响实际参数的值(存储在栈内存)

对引用数据类型,形参的改变影响实际参数的值(存储在堆内存)

实例: public class a(){

public static void mian(String[] args){

int number = 10;

System.out.println("调用前"+number); //10

change(number)

System.out.println("调用后"+number); //10

}

public static void change(int number){

number +=number; // 20

}

}

2.类和对象

类:一类具有共同属性和行为的事物的抽象,确定对象拥有的属性和行为

类的组成: 属性和行为

属性: 在类中通过成员变量来体现

行为: 在类中通过成员方法来体现(去掉static关键字)

类的定义:

public class 类名{

//成员变量

数据类型 变量1;

//成员方法

方法1;

}

对象的使用:

创建对象格式: 类名 对象名 = new 类名();

使用成员变量: 对象名.变量名

使用成员方法: 对象名.方法名()

|------|----------|------|-----------|
| 变量 | 解释 | 内存位置 | 生命周期 |
| 成员变量 | 类中方法外的变量 | 堆内存 | 随着对象存在而存在 |
| 局部变量 | 方法中的变量 | 栈内存 | 随着方法调用而存在 |

3.封装

1. private关键字

1.是权限修饰符

2.可以修饰成员(成员变量和成员方法)

3.作用保护成员不在别的类使用,private修饰只能在本类中使用

针对private修饰成员变量,要被其它类使用.

1.提供get变量名()获取变量成员的值

2.提供set变量名(参数)方法用于设置成员变量的值

2. this关键字

this修饰的变量用于代指成员变量

方法的形参和成员变量同名,如果不加this的变量,指的是形参

this代表所在类的对象引用

作用:

解决局部变量隐藏成员变量

实例:

public class Student{

private String name; // 加this指的是这个name

public void setName(String name){

this.name = name;

}

}

3. 封装

1.概念:

将成员变量隐藏在类的内部,外界无法直接操作

2.封装原则

将类的信息隐藏在类内部,不允许外部程序直接访问,通过类提供的方法来实现对隐藏信息的操作和访问成员变量private,提供对应的getXx/setXx()方法

3.封装好处

通过方法来控制成员变量的操作,提高了代码的安全性

把代码用方法进行封装,提高了代码的复用性

4. 构造方法

构造方法是一中特殊的方法

作用:创建对象

格式:

public class 类名{

修饰符 类名 (参数){

}

}

功能: 完成对象数据的初始化

注意:

1.如果没有定义构造方法,系统会给出一个默认的无参构造方法

2.如果定义了构造方法,系统将不提供默认的构造方法

3.如果定义了带参数的构造方法,想使用无参构造方法,就必须在写一个无参构造

4.无论是否使用,都建议手写无参构造方法

相关推荐
牙牙7051 分钟前
Centos7安装Jenkins脚本一键部署
java·servlet·jenkins
时光の尘8 分钟前
C语言菜鸟入门·关键字·float以及double的用法
运维·服务器·c语言·开发语言·stm32·单片机·c
paopaokaka_luck9 分钟前
[371]基于springboot的高校实习管理系统
java·spring boot·后端
以后不吃煲仔饭22 分钟前
Java基础夯实——2.7 线程上下文切换
java·开发语言
进阶的架构师22 分钟前
2024年Java面试题及答案整理(1000+面试题附答案解析)
java·开发语言
前端拾光者26 分钟前
利用D3.js实现数据可视化的简单示例
开发语言·javascript·信息可视化
The_Ticker28 分钟前
CFD平台如何接入实时行情源
java·大数据·数据库·人工智能·算法·区块链·软件工程
程序猿阿伟28 分钟前
《C++ 实现区块链:区块时间戳的存储与验证机制解析》
开发语言·c++·区块链
傻啦嘿哟1 小时前
如何使用 Python 开发一个简单的文本数据转换为 Excel 工具
开发语言·python·excel
大数据编程之光1 小时前
Flink Standalone集群模式安装部署全攻略
java·大数据·开发语言·面试·flink