学Java第二十六天---------static的用法

server/2025/1/11 12:31:52/

1.静态变量static

1.1什么是static

1.2什么是静态变量

1.3静态变量代码示例:

java">public class Student {private String name;private int age;private String id;static String teacherName;public Student() {}public Student(String name, int age, String id) {this.name = name;this.age = age;this.id = id;}

比如Student类,有静态变量teacherName

教师是被所有学生共享的,所以teacherName可以作为静态变量

用static修饰,则该变量就可以被所有对象共享,所有对象的teacherName都是同一个值

而且成员变量默认是public


Student.teacherName="阿伟老师";

可以先于对象被创建

java">public class Studenttset {public static void main(String[] args) {Student.teacherName="张老师";Student s1=new Student("小红",21,"heima001");System.out.println(s1.teacherName);}
}

2.静态方法

在本类中,直接方法名就能调用,要调用其他类的方法,则要用类名调用

 工具类:

2.1.什么是工具类,有什么作用

2.2.工具类如何构造

2.3工具类相关练习

2.3.1定义数组工具类

工具类代码:

java">package com.itbaima.exe05;public class ArrayUtil {//构造方法一定是私有的,目的是防止创建对象private ArrayUtil(){}public static String printArr(int []arr){StringBuilder sb=new StringBuilder();sb.append("[");for (int i = 0; i < arr.length; i++) {if(i==arr.length-1){sb.append(arr[i]);}else{sb.append(arr[i]).append(",");}}sb.append("]");return sb.toString();}public static double getAverage(double arr[]){double sum=0;for (int i = 0; i < arr.length; i++) {sum=sum+arr[i];}return sum/arr.length;}
}

测试类代码:

java">public class TestDemo {public static void main(String[] args) {int arr[]={1,2,3,4,5};String str=ArrayUtil.printArr(arr);System.out.println(str);double []arr2={5.1,4.6,8.3,4.9,1.3};double result=ArrayUtil.getAverage(arr2);System.out.println(result);}
2.3.2定义学生工具类

JavaBean类代码:

java">package com.itbaima.exe06;public class Student {private String name;private int age;private String gender;public Student() {}public Student(String name, int age, String gender) {this.name = name;this.age = age;this.gender = gender;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}
}

工具类代码:

java">package com.itbaima.exe06;import java.util.ArrayList;public class StudentUtil {private StudentUtil(){}public static int maxstudentAge(ArrayList<Student> list){int max=list.get(0).getAge();for (int i = 0; i < list.size(); i++) {if(list.get(i).getAge()>max){max=list.get(i).getAge();}}return max;}
}

测试类代码:

java">package com.itbaima.exe06;import java.util.ArrayList;public class Test {public static void main(String[] args) {//1.先创建一个集合ArrayList<Student> list=new ArrayList<>();//2.再创建三个学生对象Student s1= new Student("xiaohong",21,"男");Student s2= new Student("xiaolv",22,"女");Student s3= new Student("xiaolan",21,"男");//3.将三个学生加入集合中list.add(s1);list.add(s2);list.add(s3);int age=StudentUtil.maxstudentAge(list);System.out.println(age);}
}

3.静态static的注意事项


http://www.ppmy.cn/server/157463.html

相关文章

2012mfc,几种串

串,即是由符组成的串,在标准C,标准C,MFC中串这一功能的实现是不相同的,C完全兼容了C. 1.标准C中的串 在标准C中没有串数据类型,C中的串是有符类型的符数组或符类型的符指针来实现的.如: char name[26]"This is a Cstyle string"; //或char *name"This is a…

Web3 社交革命:告别中心化,拥抱多元连接

随着互联网的发展&#xff0c;我们已经习惯了通过中心化平台与他人互动&#xff0c;无论是社交媒体、即时通讯还是在线社区&#xff0c;所有这些平台都由少数大公司控制。Web3的出现&#xff0c;意味着一种新的社交模式正在悄然崛起——去中心化社交网络&#xff08;Decentrali…

页面滚动下拉时,元素变为fixed浮动,上拉到顶部时恢复原状,js代码以视频示例

页面滚动下拉时,元素变为fixed浮动js代码 以视频示例 <style>video{width:100%;height:auto}.div2,#float1{position:fixed;_position:absolute;top:45px;right:0; z-index:250;}button{float:right;display:block;margin:5px} </style><section id"abou…

Unity使用Vuforia插件进行AR开发

零、最终效果 Unity使用Vuforia插件进行AR开发 一、资源准备 1、在Unity中添加Vuforia插件 &#xff08;1&#xff09;在UnityAssetStore中搜索Vuforia插件并添加到自己的资源中 网页地址&#xff1a;https://assetstore.unity.com/packages/templates/packs/vuforia-engine…

项目中如何选择垃圾回收器

选择合适的垃圾回收器对Java应用程序的性能和可扩展性至关重要。不同的垃圾回收器适用于不同类型的应用场景。以下是一些常见的垃圾回收器及其适用场景&#xff1a; 1. 串行收集器&#xff08;Serial Collector&#xff09; 特点&#xff1a;使用单线程进行垃圾回收&#xff…

计算机网络之---局域网

什么叫局域网 局域网&#xff08;LAN&#xff0c;Local Area Network&#xff09; 是指在一个相对较小的区域内&#xff0c;如家庭、办公室、学校、企业等&#xff0c;连接多个计算机和设备的网络。局域网的特点是覆盖范围小、传输速度快、构建成本较低。 局域网的主要特点&…

数据结构——栈的实现

今天&#xff0c;我们来写一下关于栈的博文。 1.首先我们先了解一下什么是栈&#xff1f; 一&#xff1a;概念&#xff1a; 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端称为栈顶&#xff0c;另…

英雄联盟丢失dll文件怎么解决?游戏中发现dll找不到的处理方法

下班或放学回到家&#xff0c;美滋滋地打开电脑&#xff0c;准备在召唤师峡谷大杀四方&#xff0c;结果点击启动游戏的瞬间&#xff0c;一个弹窗如同 “恶魔” 般出现 ——“XX.dll 文件丢失&#xff0c;无法启动游戏”。那一刻&#xff0c;是不是感觉心都凉了半截&#xff1f;…