Java-API简析_java.net.Proxy类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)
https://blog.csdn.net/m0_69908381/article/details/131881661

出自【进步*于辰的博客
因为我发现目前,我对Java-API的学习意识比较薄弱,需要慢慢习惯使用Java-API,乃至剖析源码来提升自己的源码阅读能力和编码素质。

大家如果需要Java-API文档,我上传了【https://download.csdn.net/download/m0_69908381/87691693】。

文章目录

  • 1、概述
  • 2、嵌套类摘要
    • [2.1 static Proxy.Type](#2.1 static Proxy.Type)
  • 3、字段摘要
    • [3.1 static Proxy NO_PROXY](#3.1 static Proxy NO_PROXY)
  • 4、构造方法摘要
    • [4.1 Type type, SocketAddress sa](#4.1 Type type, SocketAddress sa)
  • 5、方法摘要
    • [5.1 SocketAddress address()](#5.1 SocketAddress address())
    • [5.2 boolean equals(Object obj)](#5.2 boolean equals(Object obj))
    • [5.3 int hashCode()](#5.3 int hashCode())
    • [5.4 String toString()](#5.4 String toString())
    • [5.5 Proxy.Type type()](#5.5 Proxy.Type type())
  • [6、关于 `Proxy.Type`](#6、关于 Proxy.Type)
    • [6.1 概述](#6.1 概述)
    • [6.2 枚举常量摘要](#6.2 枚举常量摘要)
      • [6.2.1 DIRECT](#6.2.1 DIRECT)
      • [6.2.2 HTTP](#6.2.2 HTTP)
      • [6.2.3 SOCKS](#6.2.3 SOCKS)
    • [6.3 方法摘要](#6.3 方法摘要)
      • [6.3.1 static Proxy.Type valueOf(String name)](#6.3.1 static Proxy.Type valueOf(String name))
      • [6.3.2 static Proxy.Type[] values()](#6.3.2 static Proxy.Type[] values())
  • 7、构造方法摘要(不开放)
    • [7.1 private (null)](#7.1 private (null))

1、概述

public class Proxy extends Object

此类表示代理设置,通常为类型httpsocks)和套接字地址 。Proxy 是不可变对象。

从以下版本开始:

1.5
另请参见:
ProxySelector

2、嵌套类摘要

2.1 static Proxy.Type

表示代理类型。(见第6项)

3、字段摘要

3.1 static Proxy NO_PROXY

表示 DIRECT 连接的代理设置,主要通知协议处理程序 不使用任何代理。

4、构造方法摘要

4.1 Type type, SocketAddress sa

创建表示 PROXY 连接的条目。
说明:

先看源码。

关于SocketAddress,见InetSocketAddress类

图中红框部分的意思是:若此代理对象表示直接连接 (不使用代理)或sa不属于套接字 ip
示例:

java 复制代码
InetAddress ip = InetAddress.getLocalHost();
InetSocketAddress sip = new InetSocketAddress(ip, 8080);
Proxy p1 = new Proxy(Proxy.Type.SOCKS, sip);
sout p1;

关于getLocalHost(),见InetAddress类的第2.10项。

打印结果:

5、方法摘要

5.1 SocketAddress address()

返回代理的套接字地址,如果其为直接连接,则返回 null。

5.2 boolean equals(Object obj)

将此对象与指定对象比较。

5.3 int hashCode()

返回此代理的哈希码。

5.4 String toString()

构造此代理的字符串表示形式。

5.5 Proxy.Type type()

返回代理类型。

6、关于 Proxy.Type

6.1 概述

所有已实现的接口:
SerializableComparable<Proxy.Type>

正在封闭类:
Proxy


go 复制代码
public static enum Proxy.Type extends Enum<Proxy.Type>

表示代理类型。

从以下版本开始:

1.5

6.2 枚举常量摘要

6.2.1 DIRECT

表示直接连接或缺少代理。

6.2.2 HTTP

表示高级协议的代理,如 HTTP 或 FTP。

6.2.3 SOCKS

表示 SOCKS(V4 或 V5)代理。

6.3 方法摘要

6.3.1 static Proxy.Type valueOf(String name)

返回带有指定名称的该类型的枚举常量。

示例:

java 复制代码
Proxy.Type type = Proxy.Type.valueOf("HTTP");
sout type;// HTTP

6.3.2 static Proxy.Type[] values()

按照声明该枚举类型的常量的顺序,返回包含这些常量的数组。

示例:

java 复制代码
Proxy.Type[] arr = Proxy.Type.values();
for (Proxy.Type e :
        arr) {
	sout e;
}

打印结果:

7、构造方法摘要(不开放)

7.1 private (null)

先看源码。

表示直接连接,不使用代理。


本文持续更新中。。。

相关推荐
applebomb1 个月前
vite server正则表达式
正则·vite·proxy·regexp·转发·server
路宇3 个月前
Android studio设置国内镜像代理(HTTP Proxy)教程详解
android·http·android studio·proxy·代理
命运之手3 个月前
【Gradle】Gradle指定JDK位置,JVM参数,网络代理配置
android·gradle·proxy·网络代理·properties
williamdsy4 个月前
【ubuntu】代理设置总结,最近在代理这里踩了很多坑,大致理解了linux的代理机制
linux·运维·ubuntu·proxy·unknow·7890
ZZDICT4 个月前
Zabbix分布式监控
zabbix·proxy·分布式监控
Revelation_of_Turing5 个月前
Michael.W基于Foundry精读Openzeppelin第59期——Proxy.sol
proxy·solidity·openzeppelin·foundry·evm·代理合约·delegatecall
wanmei0025 个月前
grpc代理服务的实现(二)
golang·proxy·grpc·代理
张世争8 个月前
虚拟机 ubuntu 20.04 git 设置代理的方法
git·ubuntu·proxy
公羽向阳8 个月前
【Auth Proxy】为你的 Web 服务上把锁
go·web·proxy·auth·auth-proxy