当前位置: 首页 > news >正文

java中成员变量的分类_Java基础—变量分类、类与对象

1.1变量的分类

1.根据数据类型划分:  基本数据类型变量 和引用数据类型变量

2.根据位置划分:

局部变量:定义在方法的内部或某个语句块的内部,局部变量必须初始化了,才能使用

全局(成员)变量:定义在类的内部,任何方法的外部,使用范围是整个类

1.2面向对象编程思想

事物看成一个整体,从事物的特征(属性)和行为(功能、方法)两方面及进行描述。

万事万物皆对象,不存在完全一样的对象,对象之间赋值,其实是对象的引用

面向对象的特性:抽象、封装、继承、多态

1.3 类

类是一组相关属性和行为的集合,可以看成是一类事物的模板,使用事物的属性和方

法来描述该类事物。

public class Person { //class关键字描述类

private String name;

private int age;

private String gender; //成员属性(变量)

public Person(){} //构造方法

public void speak(){ //成员方法:对象事物的行为

System.out.println("speak");

}

public void run(){

System.out.println("run");

}

public void eat(){

System.out.println("eat");

} }

1.4对象

类和对象的关系:类是对象的抽象,对象是类的实例化

1.4.1创建对象:

类名 对象名=new 类名(); //对象是通过构造方法创建出来的

构造方法

public 类名(参数列表){ }

构造方法的作用:

1.创建对象

2.通过构造方法可以对成员变量(属性)进行初始化

构造方法的分类:

1.无参数(默认)构造方法:显示无参数(用户自定义的) 和隐式无参数的构造方法

(当一个类中,不存在任何形式的构造方法的时候,JVM 会默认提供一个无

参数的构造方法。【当一个类中存在了一个或多个任何形式的构造方法了,那么 JVM 就不会再 提供这个隐式的无参数的构造方法了。】 当一个类中如果存在有参数的构造方法,那么此时还想通过无参数的构造方法 来创建对象,那么只需要添加一个无参数的构造方法即可。)

2.有参数构造方法

构造方法的注意事项:

构造方法的方法名称必须和类名相同

构造方法中没有 return 也没有返回值和 void

构造方法不能被 static 等关键字修饰

一个类可以有多个构造方法,保证参数列表(个数、类型、顺序)不同即可(重载)

** 1.4.2对象的使用:**

调用成员变量语法格式:对象名.成员属性(变量)

调用成员方法语法格式:对象名.方法名(参数列表);

1.4.3成员属性:

成员属性都有默认值,所以在声明成员属性时,可以不用初始化,就能使用

1.4.4成员方法:

访问修饰符 返回值类型 方法名称(参数列表){ }

成员属性可以直接在成员方法中使用,但是 main 方法中如果要调用成员属性和方法必须 通过对象**.属性名*方法名*(参数列表)的形式来调用,成员方法之间调用,直接写方法名(参数列表)**即可

相关文章:

  • java语言字符串代码_JAVA语言实现字符串排序的代码教程
  • java findcontour_cvFindContours获取轮廓数目和轮廓图像
  • java if 没有_使用if语句时,为什么我的代码没有给出正确的答案? - java
  • php时间格式转换成时间戳,php时间格式转换成时间戳的方法
  • echarts php 数据处理,PHP 使用Echarts生成数据统计报表详解
  • conv php,php metaphone()函数及php localeconv() 函数实例解析
  • php 配置 error_reporting,关于php中的错误配置display_errors与error_reporting说明
  • php计算器源码,php 简单计算器
  • 学生考勤管理系统php,php158 学生考勤管理系统
  • linux php-mbstring下载,linux下php加载mbstring的方法 | 快享
  • php 與或非,js逻辑与,或,非
  • java邮件代码,java发送邮件(示例代码)
  • linux下mysql乱码,Linux下mysql中文乱码解决方案
  • matlab里怎么计算期望,§7.4.2 利用MATLAB计算随机变量的期望和方差.pdf
  • php静态页缓存,php处理静态页面:页面设置缓存时间图文详解
  • ----------
  • [译]如何构建服务器端web组件,为何要构建?
  • Angular 4.x 动态创建组件
  • C++入门教程(10):for 语句
  • Debian下无root权限使用Python访问Oracle
  • Docker容器管理
  • ECS应用管理最佳实践
  • IDEA常用插件整理
  • JavaScript HTML DOM
  • Java新版本的开发已正式进入轨道,版本号18.3
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • nodejs调试方法
  • Vue2 SSR 的优化之旅
  • web标准化(下)
  • 编写高质量JavaScript代码之并发
  • 代理模式
  • 每天10道Java面试题,跟我走,offer有!
  • 浅谈web中前端模板引擎的使用
  • 巧用 TypeScript (一)
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • (10)ATF MMU转换表
  • (day18) leetcode 204.计数质数
  • (rabbitmq的高级特性)消息可靠性
  • (TOJ2804)Even? Odd?
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (附源码)ssm考试题库管理系统 毕业设计 069043
  • (理论篇)httpmoudle和httphandler一览
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (四)opengl函数加载和错误处理
  • (四)鸿鹄云架构一服务注册中心
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (轉)JSON.stringify 语法实例讲解
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • ./configure、make、make install 命令
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .htaccess 强制https 单独排除某个目录
  • .net6Api后台+uniapp导出Excel
  • .net的socket示例