java书 核心技术+卷一+4

5.4 对象包装器与自动装箱

java 复制代码
package 反射;
import java.util.AbstractList;
import java.util.ArrayList;
public class test {
    public static void main(String[] args) {
        int a=10;
        
        ArrayList<Integer> xx=new ArrayList<>();
        xx.add(a);  //自动装箱
        
        int b=xx.get(0);//自动拆箱
        
    }
}

5.5参数数量可变的方法

java 复制代码
package 反射;
import java.util.AbstractList;
import java.util.ArrayList;
public class test {
    public static void main(String[] args) {
        m1("aaa");
        m1("aaa","nnn");
    }
    public static void m1(String... aaa)//传若干个 可以表示为数组
    {
        //比如String a1=aaa[0];
    }
}

5.6枚举类

也是一个类 但是限定了对象的个数

所以不能new

枚举的构造方法必须是私有的

java 复制代码
package 反射;

public enum MMM {
    AA(10,"1"),BB(20,"b"),CC(30,"c"),DD(40,"d");
    
    public int age;
    public String name;
    private MMM(int a,String b)
    {
        age=a;
        name=b;
    }
    public void m1()
    {
        
    }
}

构造器里面若是传参 枚举中的每个对象也得传参

枚举的调用和正常变量没什么区别

java 复制代码
package 反射;
import java.util.AbstractList;
import java.util.ArrayList;
public class test {
    public static void main(String[] args) {
    MMM x1=MMM.AA;
    MMM x2=MMM.BB;
    x1.age=90;
    x1.name="xiaoli";
}
}

5.7反射

反射和代理是框架的核心

也是架构师的核心

5.7.1 Class类

获取类信息的三种方式:

对象.getClass()

类.class

Class.forname("类的路径")

java 复制代码
Employee e;
....
Class cl=e.getClass();
//是将e这个类中的全部的类信息存到cl中
//Class类是用来存储获取到的类信息的
相关推荐
橙子小哥的代码世界2 分钟前
【机器学习】【KMeans聚类分析实战】用户分群聚类详解——SSE、CH 指数、SC全解析,实战电信客户分群案例
人工智能·python·机器学习·kmeans·数据科学·聚类算法·肘部法
计算机徐师兄2 分钟前
Python基于Flask的豆瓣Top250电影数据可视化分析与评分预测系统(附源码,技术说明)
python·flask·豆瓣top250电影数据可视化·豆瓣top250电影评分预测·豆瓣电影数据可视化分析系统·豆瓣电影评分预测系统·豆瓣电影数据
k layc6 分钟前
【论文解读】《Training Large Language Models to Reason in a Continuous Latent Space》
人工智能·python·机器学习·语言模型·自然语言处理·大模型推理
非 白7 分钟前
【Java】代理模式
java·开发语言·代理模式
知识分享小能手13 分钟前
Html5学习教程,从入门到精通,HTML5 简介语法知识点及案例代码(1)
开发语言·前端·javascript·学习·前端框架·html·html5
muxue17815 分钟前
go:运行第一个go语言程序
开发语言·后端·golang
米饭好好吃.16 分钟前
【Go】Go wire 依赖注入
开发语言·后端·golang
闲猫17 分钟前
go 接口interface func (m Market) getName() string {
开发语言·后端·golang
Good Note17 分钟前
Golang的静态强类型、编译型、并发型
java·数据库·redis·后端·mysql·面试·golang
可爱de艺艺17 分钟前
Go入门之struct
开发语言·后端·golang