社区
C#
帖子详情
请问可以在构造函数中设置不满足条件不允许实例化么?
loimo
2004-12-22 09:40:40
以及可以返回不允许实例化的提示信息么?
...全文
225
3
打赏
收藏
请问可以在构造函数中设置不满足条件不允许实例化么?
以及可以返回不允许实例化的提示信息么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
brightheroes
2004-12-22
打赏
举报
回复
当然,也可以写一个静态方法,来代替你的构造函数,同时把你的构造函数私有
public class Test
{
private Test(int a)
{
..............
}
public static Test GetInstance(int a)
{
if ( a < 0) return null;
return new Test(a);
}
}
looner
2004-12-22
打赏
举报
回复
可以通過返回異常的方式實現
public class Test
{
public Test(int a)
{
if (a<0)
{
throw new Exception("條件不符,不能實例化");
}
}
public string ShowString()
{
return("ABC");
}
}
private void button2_Click(object sender, System.EventArgs e)
{
try
{
Test t=new Test(-2);
MessageBox.Show(t.ShowString());
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
为什么不
允许
使用 Java 静态
构造函数
?
本文深入探讨了Java
中
为何不
允许
使用静态
构造函数
,解释了
构造函数
与对象的关系,静态属性的初始化方式,以及静态
构造函数
如何破坏继承机制。并提供了使用静态块作为替代方案的示例。
Kotlin-面向对象之
构造函数
、
实例化
和初始化
本文围绕Kotlin开发语言展开,详细介绍了
构造函数
,包括主
构造函数
和次
构造函数
的定义与特点;阐述了
实例化
过程,Kotlin
实例化
类无需new关键字;还讲解了初始化相关内容,如初始化块、属性初始化、延迟初始化和惰性初始化,强调属性初始化的严格要求。
抽象类可以有
构造函数
吗?
抽象类可以有
构造函数
,虽然不能直接
实例化
,但当创建其子类对象时,抽象类的
构造函数
会被调用。
构造函数
在抽象类
中
常用于初始化共有的属性或
设置
默认状态。例如,Java的Calendar类拥有受保护的
构造函数
,只
允许
子类进行
实例化
。
Java私有
构造函数
的使用
本文探讨了Java
中
私有
构造函数
的使用场景,重点介绍了单例模式的实现原理及如何利用私有
构造函数
防止类的
实例化
。
java
构造函数
static_为什么不
允许
使用 Java 静态
构造函数
?
Java
中
不
允许
静态
构造函数
,因为
构造函数
属于对象而非类,静态方法无法初始化对象变量,且会破坏继承机制。静态块可用于初始化静态变量。理解这一限制有助于更好地遵循Java编程规范。
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章