反射及网络编程笔记

反射是一种动态获取类信息并操作对象的技术,允许在运行时创建对象和调用方法。它包括获取Class对象、构造函数、属性和方法等步骤,但可能带来性能损失和安全隐患。TCP是一种面向连接、可靠的网络协议,适合对数据安全性要求高的场景,而UDP则是无连接、高效但不可靠的协议,适用于音乐、视频流等实时性要求高的应用。
摘要由CSDN通过智能技术生成

 反射

1.什么是反射?

动态获取属性和方法的机制

2.反射的作用?

  • 给定的一个类(Class)对象,通过反射获取这个类(Class)对象的所有成员结构。
  • 给定的一个具体的对象,能够动态地调用它的方法及对任意属性值进行获取和赋值。

这种动态获取类的内容,创建对象、以及动态调用对象的方法及操作属性的机制为反射。即使该对象的类型在编译期间是未知,该类的 .class 文件不存在,也可以通过反射直接创建对象。

3.反射的优点以及缺点

优点:

        1.反射和new 都能创建用户对象,并且调用里面的方法,但是反射是针对字符串编程,new是针对实体类编程

        2.可以深入到类的内部结构,去做一些操作

缺点:

        1.相较直接调用,在量大的情景下反射性能下降

        2.存在内部暴露的安全隐患

4.反射的步骤

        1.获取Class对象实例

        2.通过Class获取构造函数,属性,方法,接口...

5.获取Class对象实例的方法

        1.类名.class

        2.对象.getClass();

        3.Class.forName("完全限定的类名");

6.实现java反射机制的类

        1.Class类:代表一个类

        2.Field类:代表类的字段属性

        3.Method类:代表类的方法

        4.Constructor类:代表类的构造方法

网络编程

1.TCP与UDP的区别

TCPUDP
面向连接,可靠的数据传输无连接的,不可靠的数据传输
数据安全,有校验数据不安全,缺乏校验
速度慢效率高

什么时候用TCP、什么时候用UDP

发送:音乐、视频、大文件使用UDP

对数据要求比较高的传输:TCP

2.UDP的通讯步骤

    发送方:

        1.创建DatagramSocket

        2.创建DatagramPacket   参数:(数据,长度,目标主机地址,目标主机端口号)

        3.调用socket对象的send(数据报对象)

        4.关闭

     接收方

        1.创建DatagramSocket(端口),指定监听的端口

        2.创建DatagramPacket(当作容器的字节数组,长度)

        3.调用socket对象的receive(数据报对象)

        4.显示数据

        5.关闭

3.TCP的通讯步骤

     客户端

        1.创建Socket(目标主机地址,端口号)

        2.封装socket的输出字节流得到缓冲字节流

        3.使用缓冲字节流写入数据

        4.清空缓存

        5.关闭socket

     服务端

        1.创建SercerSocket(监听的端口)

        2.使用serverSocket.accept()得到一个Socket对象

        3.封装socket的输入字节流得到缓冲字节流

        4.读取数据

        5.关闭socket

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值