string类

动态代理类的实现和解析

此生再无相见时 提交于 2019-11-30 11:01:17
package proxyBase; import java.io.IOException; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationHandler; import java.lang.reflect.InvocationTargetException; import java.net.MalformedURLException; import java.util.Arrays; import javax.tools.JavaCompiler; import javax.tools.JavaCompiler.CompilationTask; import javax.tools.StandardJavaFileManager; import javax.tools.ToolProvider; public class MyProxy { static Class<?>[] parameterTypes = { InvocationHandler.class }; protected InvocationHandler h; protected MyProxy(InvocationHandler h) { this.h = h; } public static Object

Java自学-接口与继承 内部类

丶灬走出姿态 提交于 2019-11-30 09:59:57
Java 内部类 内部类分为四种: 非静态内部类 静态内部类 匿名类 本地类 步骤 1 : 非静态内部类 非静态内部类 BattleScore “战斗成绩” 非静态内部类可以直接在一个类里面定义 比如: 战斗成绩只有在一个英雄对象存在的时候才有意义 所以实例化BattleScore 的时候,必须建立在一个存在的英雄的基础上 语法: new 外部类().new 内部类() 作为Hero的非静态内部类,是可以直接访问外部类的 private 实例属性name的 package charactor; public class Hero { private String name; // 姓名 float hp; // 血量 float armor; // 护甲 int moveSpeed; // 移动速度 // 非静态内部类,只有一个外部类对象存在的时候,才有意义 // 战斗成绩只有在一个英雄对象存在的时候才有意义 class BattleScore { int kill; int die; int assit; public void legendary() { if (kill >= 8) System.out.println(name + "超神!"); else System.out.println(name + "尚未超神!"); } } public static void

数据请求返回共用类(公共)

我们两清 提交于 2019-11-30 08:15:59
1 public class RequestResult 2 { 3 public bool IsSuccess { get; set; } 4 5 public string Message { get; set; } 6 7 public void OnSuccess(String msg = null) 8 { 9 IsSuccess = true; 10 Message = msg; 11 } 12 13 public virtual RequestResult OnError(string errorMessage = "") 14 { 15 this.IsSuccess = false; 16 this.Message = errorMessage; 17 return this; 18 } 19 } 20 21 22 public class RequestResult<T> : RequestResult 23 { 24 25 public T Data { get; set; } 26 27 public RequestResult() 28 { 29 IsSuccess = true; 30 } 31 32 public RequestResult(bool isSuccess) 33 { 34 IsSuccess = isSuccess; 35 } 36 37

实用类

与世无争的帅哥 提交于 2019-11-30 00:40:47
学习目标: 掌握枚举类型 掌握Date类及Calendar类 理解包装类 掌握Math类的常用方法 会使用String类的常用方法 会使用StringBuffer类的常用方法 了解String类及StringBuffer类操作字符串的原理 会使用Random类生成随机数 ————————————————————————————————————— 认识枚举 从Java SE 5.0开始,Java程序设计语言引入了一种新的类型——枚举(Enum) 枚举是指由一组固定的常量组成的类型。使用关键字enum定义。 枚举其实就是一种类型,是java.long.Enum类的子类,继承了Enum类的许多有用的方法。深入了解请自行查看API帮助文档。 在Java中,通常使用枚举表示一组个数有限的值,用于实现对输入的值进行约束检查。 ————————————————————————————————————— 例1 : public enum Genders { 男,女 } public class Student { public Genders sex; public static void main(String[] args) { Student stu = new Student(); stu.sex = Genders.女; stu.sex = Genders.男; } } 例2

IO流—File类与递归

你离开我真会死。 提交于 2019-11-29 23:41:08
1.File类 把内存中的数据存储到持久化设备上这个动作称为输出(写) Output 操作 把持久设备上的数据读取到内存中的这个动作称为输入(读) Input 操作。 我们把这种输入和输出动作称为 IO 操作。 Java 中把文件或者目录(文件夹)都封装成 File 对象 。也就是说如果我们要去操作硬盘上的文件,或者文件夹只要找到 File 这个类即可。 File类的构造函数 通过构造方法创建 File 对象: public class FileDemo { public static void main(String[] args) { //File 构造函数演示 String pathName = "e:\\java_code\\day22e\\hello.java"; File f1 = new File(pathName);// 将 Test22 文件封装成 File 对象。注意;有可以封装不存在文件或者文件夹,变成对象。 System. out .println(f1); File f2 = new File("e:\\java_code\\day22e","hello.java"); System. out .println(f2); // 将 parent 封装成 file 对象。 File dir = new File("e:\\java_code\\day22e"

Properties类使用详解

风格不统一 提交于 2019-11-29 21:46:19
Java Properties类使用详解 概述 Properties 继承于 Hashtable。表示一个持久的属性集,属性列表以key-value的形式存在,key和value都是字符串。 Properties 类被许多Java类使用。例如,在获取环境变量时它就作为System.getProperties()方法的返回值。 我们在很多 需要避免硬编码的应用场景 下需要使用properties文件来加载程序需要的配置信息,比如JDBC、MyBatis框架等。Properties类则是properties文件和程序的中间桥梁,不论是从properties文件读取信息还是写入信息到properties文件都要经由Properties类。 常见方法 除了从Hashtable中所定义的方法,Properties定义了以下方法: Properties类 下面我们从 写入、读取、遍历 等角度来解析Properties类的常见用法: 写入 Properties类调用setProperty方法将键值对保存到内存中,此时可以通过getProperty方法读取,propertyNames方法进行遍历,但是并没有将键值对持久化到属性文件中,故需要调用store方法持久化键值对到属性文件中。 package cn.habitdiary; import java.io.FileInputStream;

Java集合类

夙愿已清 提交于 2019-11-29 20:35:41
Java集合类的用途是 保存对象 ,根据其概念的不同可以划分为两个不同的类别: Collection :一个独立元素的序列,这些元素都服从一条或多条规则。 List 必须按照插入的顺序保存元素, Set 不能有重复元素, Queue 按照队列规则来确定对象顺序。 Map :保存一组成对的 键值对 且允许使用键来查找值。映射表允许我们使用作为 键 的对象来查找对应的 值 对象,在实际编程中的应用十分广泛。 List List 可以将元素维护在特定的序列中。 List 接口在 Collection 的基础上添加了大量的方法,使得可以在 List 的中间插入和移除元素。 有两种类型的 List : ArrayList :基于可变长度数组实现的 List ,长于随机访问其中的元素,但增删元素时效率较低。 LinkedList :基于链表实现的 List ,随机访问相对较慢,但增删元素效率高且对首尾操作方便。 Set Set 不保存重复的元素。如果试图将相同对象的多个实例添加到 Set 中,那么它不会保存后添加的元素。 Set 具有和 Collection 完全一样的接口,因此完全没有任何额外的功能。 常用有三种类型的 Set : HashSet :使用散列函数储存元素,为快速查找进行了专门的优化,所以拥有最快的查找速度。当 hashCode() 和 equals(Object object

C#使用SHA1加密类(RSAFromPkcs8)支持1024位和2048位私钥

我与影子孤独终老i 提交于 2019-11-29 19:46:52
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Security.Cryptography; namespace HelloWord.RSA { /// <summary> /// 类名:RSAFromPkcs8 /// 功能:RSA加密、解密、签名、验签 (支持1024位和2048位私钥) /// 详细:该类对Java生成的密钥进行解密和签名以及验签专用类,不需要修改 /// 版本:3.0 /// 日期:2013-07-08 /// 说明: /// 以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。 /// </summary> public sealed class RSAFromPkcs8 { /** * RSA最大解密密文大小 * 注意:这个和密钥长度有关系, 公式= 密钥长度 / 8 */ private const int MAX_DECRYPT_BLOCK = 128; /// <summary> /// 签名 /// </summary> /// <param name="content">待签名字符串</param> /

java学习----String类拓展

耗尽温柔 提交于 2019-11-29 19:31:06
本篇再对String类再作一些扩展,包括: 字符串数组的遍历 各种字符的统计 字符串的定义 char c=newStr.charAt(i);的使用 JavaScript charAt() 方法 定义和用法 charAt() 方法可返回指定位置的字符。 请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串。 语法 stringObject.charAt(index) package hello_world ; public class Demo9 { public static void main ( String [ ] args ) { String str = " aB232 23 &*( s2 " ; String newStr = str . trim ( ) ; System . out . println ( "str=" + str ) ; System . out . println ( "newStr=" + newStr ) ; int yingWen = 0 ; int kongGe = 0 ; int shuzi = 0 ; int qiTa = 0 ; for ( int i = 0 ; i < newStr . length ( ) ; i ++ ) { char c = newStr .

第七章-复用类-代理

北城余情 提交于 2019-11-29 17:37:20
练习11:(3)修改 Detergent.java,让它使用代理。 一:我的答案: 1 package com.learnJava.test; 2 3 /** 4 * @Author zhuchangli 5 * @Date 2019/9/15 6 **/ 7 public class DetergentDelegation { 8 9 private Cleanser cleanser = new Cleanser(); 10 private String s = "Cleanser "; 11 public void scrub(){ 12 cleanser.append(" Detergent.scrub()"); 13 cleanser.scrub(); 14 } 15 16 public void append(String a){ 17 cleanser.append(a); 18 } 19 20 public void dilute(){ 21 cleanser.dilute(); 22 } 23 24 public void apply(){ 25 cleanser.applay(); 26 } 27 28 public void foam(){ 29 append("foam()"); 30 } 31 32 public String toString(){ 33