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类是用来存储获取到的类信息的
相关推荐
洛小豆5 分钟前
java 中 char 类型变量能不能储存一个中文的汉字,为什么?
java·后端·面试
爱吃烤鸡翅的酸菜鱼12 分钟前
从数据库直连到缓存预热:城市列表查询的性能优化全流程
java·数据库·后端·spring·个人开发
Algebraaaaa12 分钟前
Qt中的字符串宏 | 编译期检查和运行期检查 | Qt信号与槽connect写法
开发语言·c++·qt
Red Car12 分钟前
javascript 性能优化实例一则
开发语言·javascript·ecmascript
友友马14 分钟前
『 QT 』Hello World控件实现指南
开发语言·qt
一只学java的小汉堡26 分钟前
Java 面试高频题:HashMap 与 ConcurrentHashMap 深度解析(含 JDK1.8 优化与线程安全原理)
java·开发语言·面试
huohaiyu1 小时前
Hashtable,HashMap,ConcurrentHashMap之间的区别
java·开发语言·多线程·哈希
信奥卷王2 小时前
[GESP202503 五级] 原根判断
java·数据结构·算法
木子杳衫2 小时前
【软件开发】管理类系统
python·web开发
小咕聊编程2 小时前
【含文档+源码】基于SpringBoot的过滤协同算法之网上服装商城设计与实现
java·spring boot·后端