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类是用来存储获取到的类信息的
相关推荐
拾贰_C6 分钟前
【SpringBoot】MyBatisPlus(MP | 分页查询操作
java·spring boot·后端·spring·maven·apache·intellij-idea
猛踹瘸子那条好腿の10 分钟前
Spring-boot初次使用
java·springboot
shykevin2 小时前
python开发Streamable HTTP MCP应用
开发语言·网络·python·网络协议·http
我不是程序猿儿2 小时前
【C#】 lock 关键字
java·开发语言·c#
漫路在线3 小时前
JS逆向-某易云音乐下载器
开发语言·javascript·爬虫·python
小辉懂编程3 小时前
C语言:51单片机实现数码管依次循环显示【1~F】课堂练习
c语言·开发语言·51单片机
tmacfrank3 小时前
网络编程中的直接内存与零拷贝
java·linux·网络
醍醐三叶4 小时前
C++类与对象--2 对象的初始化和清理
开发语言·c++
weixin_472339464 小时前
Maven 下载安装与配置教程
java·maven
Magnum Lehar5 小时前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎