封装类、箱

一、 基本类型的封装类
1.封装类的作用:封装类还可以实现基本类型变量和字符串之间的转换,将字符串的值转换为基本类型的值有两种方式:直接利用封装类的构造方法,即Xxx(String s)构造方法调用封装类提parseXxx(String s)静态方法。
2.基本类型的值转换成字符串有三种方式:直接使用一个空字符串来连接数值即可
调用封装类提供的toString()静态方法
调用String类提供的valueOf()静态方法
3.代码演示基本类型的封装类:// 直接把一个整数值赋给Integer对象
Integer intObj = 5;
// 直接把一个boolean值赋给一个Boolean对象
Boolean boolObj = true;
// Integer对象与整数进行算数运算
int a = intObj + 10;
System.out.println(a);
System.out.println(boolObj);
// 字符串与基本intStr类型变量之间的转换
String = “123”;
// 把一个特定字符串转换成int
int it1 = Integer.parseInt(intStr);
int it2 = new Integer(intStr);
System.out.println(it1 + “,” + it2);
运行结果:15
true
123,123
二、装箱和拆箱
1.基本类型与其对应封装类之间能够自动进行转换,其本质是Java的自动装
箱和拆箱过程。
装箱是指将基本类型数据值转换成对应的封装类对象,即将栈中的数据
封装成对象存放到堆中的过程。
拆箱是装箱的反过程,是将封装的对象转换成基本类型数据值,即将堆
中的数据值存放到栈中的过程。
5.示例代码:
int i = 10;
// 自动装箱
Integer obj = i + 5;
Double dobj = 4.5;
Boolean bobj = false;
System.out.println(“obj=” + obj+",dobj="+dobj+",bobj="+bobj);
// 自动拆箱
int a = obj;
double d=dobj;
boolean b=bobj;
System.out.println(“a=” + a+",d="+d+",b="+b);
运行结果:obj=15,dobj=4.5,bobj=false
a=15,d=4.5,b=false

在.NET的WinForm应用程序中,`PasswordBox`控件通常用于显示密码输入框,用户无法直接看到输入的内容。为了简化管理和提高代码复用性,可以创建一个自定义的封装类来管理`PasswordBox`。这个封装类可能会包含以下几个部分: 1. **属性**: - `TextBox`:作为底层的`PasswordBox`实例,提供实际的文本输入功能。 - `IsVisible`:表示密码是否可见,可以根据需求设置是否显示*字符替换真实的密码。 ```csharp public class CustomPasswordBox : Control { private readonly PasswordBox passwordBox; public CustomPasswordBox() { passwordBox = new PasswordBox(); // 添加到当前窗体的控件集合中 Controls.Add(passwordBox); } [Category("Appearance")] [Description("Whether the password is visible or not.")] public bool IsVisible { get { return passwordBox.UseSystemPasswordChar; } set { passwordBox.UseSystemPasswordChar = !value; } } // 其他可能有用的属性... } ``` 2. **方法**: - `SetText`:设置密码内的文字。 - `GetText`:获取用户输入的密码(只返回*字符)。 ```csharp public string Text { get => passwordBox.Text; set => passwordBox.Text = value; } // 可能需要的其他辅助方法,如清空、验证等 public void Clear() { passwordBox.Clear(); } ``` 3. **事件处理**: - `TextChanged`:当密码发生变化时触发。 ```csharp private void passwordBox_TextChanged(object sender, EventArgs e) { OnTextChanged(passwordBox.Text); } protected virtual void OnTextChanged(string newPassword) { // 这里可以添加事件通知或处理逻辑 } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值