首页 > 编程语言 >java小白入门学习之---类变量和类方法

java小白入门学习之---类变量和类方法

时间:2024-11-27 23:05:28浏览次数:11  
标签:java 入门 访问 静态 --- 对象 static 方法 变量

一、类变量(静态变量/静态属性)

1.什么是类变量?

  • 类变量也叫静态变量/静态属性,是该的所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量
  • 类变量在类加载时就初始化了(所以即使没有创建对象,只要类加载了,就可以使用类变量
  • 类变量的生命周期随类加载开始,随类消亡销毁

2.定义类变量

(1)访问修饰符 static 数据类型变量名;【推荐】

 public static String name="小猫";

(2) static 访问修饰符 数据类型变量名;

 static public String name="小猫";

3.访问类变量

(1)类名. 类变量名【推荐】
(2)对象名.类变量名
【注意:必须遵守访问权限】
(类变量在类加载时就初始化了(所以即使没有创建对象,只要类加载了,就可以使用类变量)
在这里插入图片描述

4.类变量使用场景

  • 当我们需要让某个类的所有对象都共享一个变量时,就可以考虑使用类变量(静态变量)
    (比如:定义学生类,统计所有学生共交多少钱。)

5.类变量与实例变量(普通属性)区别

  1. 类变量是该类的所有对象共享的,而实例变量是每个对象独享的
  2. 加上static称为类变量或静态变量,否则称为 “实例变量 / 普通变量 / 非静态变量”
  3. 类变量可以通过类名.类变量名或者对象名.类变量名来访问。实例变量不可以

静态变量 ->共用 静态方法-> 基本不会用到其对象实例的类的方法

二、类方法(静态方法)

1.类方法形式

(1)访问修饰符 static 数据返回类型方法名(){}【推荐】

public static void AA(){
System.out.println("喵喵喵....");
 }

(2)static 访问修饰符 数据返回类型方法名(){}

static public void AA(){
System.out.println("汪汪汪....");
}

2.类方法调用

使用方式:
(1)类名. 类方法名

(2)对象名.类方法名

【前提是满足访问修饰符的访问权限和范围】

3.类方法使用场景

  • 静态方法在无需实例化对象、实现工具方法、访问静态成员、实现工厂方法或单例模式等场景下非常有用。
  • 当方法中不涉及到任何和对象相关的成员,则可以将方法设计成静态方法,提高开发效率。
    (比如:工具类中的方法utils、Math类、Arrays…)
    (说白了 就是一个工具 谁都可以拿来用 并不用开辟空间浪费内存)

4.类方法 与 普通方法

  1. 类方法和普通方法都是随着类的加载而加载,将结构信息存储在方法区;类方法中无this的参数,普通方法中隐含着this的参数
  2. 类方法可以通过类名调用,也可以通过对象名调用。
    普通方法和对象有关,需要通过对象名调用(比如对象名.方法名(参数) ),不能通过类名调用。
  3. 类方法中不允许使用和对象有关的关键字(比如this和super)
    普通方法(成员方法)可以。
  4. 普通方法可以访问静态成员,静态方法只能访问静态成员

【小结:普通可以访静态,静态只能访静态,且静态不能出现this super

  静态变量 -> 共用 
  静态方法 -> 基本不会用到其对象实例的类的方法

标签:java,入门,访问,静态,---,对象,static,方法,变量
From: https://blog.csdn.net/2401_88623584/article/details/144092835

相关文章

  • 【开源免费】基于SpringBoot+Vue.JS新闻推荐系统(JAVA毕业设计)
    博主说明:本文项目编号T056,文末自助获取源码\color{red}{T056,文末自助获......
  • 【开源免费】基于SpringBoot+Vue.JS古典舞在线交流平台(JAVA毕业设计)
    博主说明:本文项目编号T057,文末自助获取源码\color{red}{T057,文末自助获......
  • 【开源免费】基于SpringBoot+Vue.JS大学生就业招聘系统(JAVA毕业设计)
    博主说明:本文项目编号T058,文末自助获取源码\color{red}{T058,文末自助获......
  • 初识java(3)
    大家好,今天我们来讲讲我们的老伙计-变量,在哪一门编程语言中,变量的作用都是不可或缺的,那么下面我们就来详细了解一下java中的变量。一.变量概念在程序中,除了有始终不变的常量外,有些内容可能会经常被改变,比如:人的年龄,身高,分数,数学函数的结果等,对于这些经常改变的量,在java程序中......
  • C语言学习笔记-4
    四、控制语句1.选择控制语句1、if语句1)if(){语句1;语句2;}如果条件成立执行大括号里的所有语句,不成立的话大括号里的语句不执行2)if(条件表达式){}else{}如果if的条件成立,执行if后面{}内的语句,否则执行else后的语句3)if(条件表达式1)......
  • JS-DOM与BOM
    DOMDOM(DocumentObjectModel)文档对象模型是W3C组织制定并推荐的标准,这个标准提供了一系列操作HTML的统一API(ApplicationProgrammingInterface)核心对象是document浏览器的工作流程浏览器读取HTML文件在内存中生成DOM树调用API渲染显示DOM树DOM树是将HTML文档......
  • JS-this指向
    普通函数this的值取决于函数是如何被调用的<body><script>//函数普通中this指向windowfunctionfoo(){console.log(this)}foo()//this的指向是在函数调用时确定的//函数是由对象调用的,函数中的this指向调用它的对象//对于......
  • Java程序基础⑤Java数组的定义和使用+引用的概念
    目录1.Java数组的基本概念1.1数组的定义1.2数组存在的意义1.3数组的使用1.4二维数组2. 引用类型+JVM的内存分布2.1JVM的内存分布2.2 基本数据类型和引用型数据类型的区别2.3引用注意事项2.4传值传递3.数组总结和应用场景3.1一维数组和二维数组的存储3......
  • Vue-无构建工具的创建、挂载、渲染
    简介Vue是一个动态构建用户界面的渐进式JS框架.借鉴了Angular的模板语法和数据绑定借鉴了React的组件化和虚拟DOM特点:声明式渲染:先声明后使用响应式数据:数据改变时,视图会响应数据的改变,重新渲染新的值组件化开发安装项目初始化:npminit-y安装vue:npm......
  • 【分块】LibreOJ 6281 数列分块入门5
    前言对一个int类型的非负整数进行开方下取整,最多只会开方四次大小就不会再发生变化。一个大于\(0\)的正整数开方下取整最后的结果比如是\(1\),而\(1\)开方的结果仍然会是\(1\);\(0\)开方的结果仍是\(0\)。验证int类型整数最多可以开方的次数的demo#include<bits/stdc+......